插件窝 干货文章 js如何传参

js如何传参

传递 strong 引用 参数 60    来源:    2024-10-19
在 javascript 中传递参数有两种方法:按值传递(将参数值复制一份传递)和按引用传递(将参数引用传递)。按值传递不会影响原始变量,而按引用传递(使用复杂数据类型模拟)会影响原始变量。

如何在 JavaScript 中传递参数

在 JavaScript 中,有两种主要方法可以向函数传递参数:

1. 按值传递

按值传递是指将参数的值复制一份传递给函数。这意味着在函数内部对参数所做的任何更改都不会影响原始变量。

function sum(num1, num2) {
  num1 = num1 + 1;
  return num1 + num2;
}

const a = 1;
const b = 2;
const result = sum(a, b);

console.log(a); // 输出:1
console.log(b); // 输出:2
console.log(result); // 输出:4

在这个示例中,sum() 函数接收两个按值传递的参数。num1 的值在函数内被修改为 2,但原始变量 a 的值保持不变。

2. 按引用传递

按引用传递是指将参数的引用传递给函数。这意味着在函数内部对参数所做的任何更改都会影响原始变量。

注意:JavaScript 没有真正的按引用传递机制。然而,可以使用对象或数组等复杂数据类型来模拟按引用传递。

要模拟按引用传递,可以使用以下方法:

  • 使用对象

    function modifyObject(obj) {
      obj.property = "new value";
    }
    
    const obj = { property: "initial value" };
    modifyObject(obj);
    
    console.log(obj.property); // 输出:new value
  • 使用数组

    function modifyArray(arr) {
      arr[0] = "new value";
    }
    
    const arr = ["initial value"];
    modifyArray(arr);
    
    console.log(arr[0]); // 输出:new value