Tra*_*try 2 javascript variables referenceerror
var g = {
lang: "ttt",
l: function(){
console.log(lang);
}
}
console.log(g.l());
Run Code Online (Sandbox Code Playgroud)
ReferenceError:未定义lang
为什么lang未定义?
你需要使用g.lang或this.lang.除非或使用,否则this将引用该g对象..call().apply()
例如,这将导致未定义:
var g = {
lang: "ttt",
l: function(){
console.log(this.lang);
}
}
console.log(g.l.call(Math));
Run Code Online (Sandbox Code Playgroud)
但是,这将始终给出正确的结果(如果您不重新分配g):
var g = {
lang: "ttt",
l: function(){
console.log(g.lang);
}
}
console.log(g.l.call(Math));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
621 次 |
| 最近记录: |