can*_*289 2 javascript closures scope shadow hoisting
我正在尝试在函数中为自己分配一个变量,如果变量与函数的参数同名,它似乎不起作用,但如果它们不是同一个名称.代码示例更清楚地显示了这一点.
我应该期待这种行为吗?这是我的d3用例的一个简化示例,它提示了这个问题.我也在下面展示过.
非工作的例子
var a;
function assign(a) {
a = a;
}
assign("test")
console.log(a)
Run Code Online (Sandbox Code Playgroud)
未定义
工作实例
var a;
function assign(b) {
a = b;
}
assign("test")
console.log(a)
Run Code Online (Sandbox Code Playgroud)
测试
用例
var data
d3.csv("data.csv", function(error, data) {
//Doesn't work for me
data = data
}
console.log(data)
Run Code Online (Sandbox Code Playgroud)
未定义