当我将一个字符串作为参数传递给函数时,它返回undefined
。那是为什么?
let a = 'b';
let test = (a) => console.log(a);
test(); // undefined
答案 0 :(得分:2)
为什么?
因为你没有传递任何论据。请尝试以下方法:
test(a);
以下定义:
let test = (a) => console.log(a);
如下所示:
function test(a){
console.log(a);
}
因此,当您调用test
时,如果不传递任何参数,则a
的值将不确定。
答案 1 :(得分:2)
当您致电test();
时,您没有在(
和)
之间放置任何内容,因此您没有传递任何参数。
当您定义test
(使用(a) =>
)时,您创建了一个本地变量a
,该变量用全局变量屏蔽同名。
要通过a
,您必须实际传递它:test(a)
。