JavaScript函数访问对象属性

use*_*794 2 javascript

一些愚蠢的问题,但..为什么下面的代码只返回一个空字符串:

var a = {
     name:"321",
     foo: function(){
        console.log(name);
    }
}

a.foo();
Run Code Online (Sandbox Code Playgroud)

Ric*_*ell 7

因为你没有将名称作为任何东西,所以它正在寻找一个全局变量.尝试更换

console.log(name);
Run Code Online (Sandbox Code Playgroud)

同

console.log(this.name);
Run Code Online (Sandbox Code Playgroud)