MST

星途 面试题库

面试题:JavaScript函数定义优化之参数处理

请说明在JavaScript函数定义中,当函数接收多个参数时,如何通过优化代码来提高函数的灵活性与可维护性。例如,对于一个函数`function calculate(a, b, c)`,假设该函数用于一些数值计算,若后续需要新增参数或修改参数顺序,怎样优化函数定义能减少对调用处代码的影响。
19.8万 热度难度
编程语言JavaScript

知识考点

AI 面试

面试题答案

一键面试
  1. 使用对象解构
    • 可以将函数定义修改为接收一个对象参数,然后通过对象解构来获取所需的值。例如:
    function calculate({a, b, c}) {
        // 执行计算操作
        return a + b + c;
    }
    
    • 这样如果后续需要新增参数,比如新增d参数,只需在调用函数时传递新的属性即可,调用处代码无需做较大改动。例如:
    calculate({a: 1, b: 2, c: 3, d: 4});
    
    • 如果修改参数顺序,调用处代码也不受影响,因为是通过属性名来获取值。
  2. 设置默认参数值
    • 在使用对象解构时,可以为参数设置默认值。例如:
    function calculate({a = 0, b = 0, c = 0}) {
        return a + b + c;
    }
    
    • 这样在调用函数时,如果某些参数未传递,函数依然能正常工作,并且在后续新增参数时,也可以方便地为新参数设置默认值,进一步提高函数的灵活性与可维护性。例如,新增d参数并设置默认值:
    function calculate({a = 0, b = 0, c = 0, d = 0}) {
        return a + b + c + d;
    }