title: 按值传参
date: 2021-04-04 18:51:12
tags: 技术
【JS】引用对象是如何传参的?
先看两段代码JS
//Code 1.1
function add(){
var a = 2;
}
add();
console.log(a);//ReferenceError
//Code 1.2
function add(){
a = 2;
}
add();
console.log(a);// 2
第一个输出ReferenceError
,第二个输出2
,因为在函数内部使用var
则是一个局部变量,如果不使用var
根据理解作用域中的LHS
查找失败后,非严格模式下会自动创建全局变量,所以相当于
//Code 1.3
var a;
function add(){
a = 2;
}
add();
console.log(a); //2
再看两段代码
//Code 2.1
var a =