当我从下面的代码运行“addStuff”时,我的控制台(Chrome)中有两行。第一行是我们所期望的“a”,但第二行是“未定义”。我为什么要定义?
每个函数都返回一些东西,只是当没有明确定义“return”时,javascript给出了undefined吗?
function Stuff() {
this.x = 1;
var x = "a";
this.addStuff = function() {
console.log(x);
}
}
myStuff = new Stuff();
myStuff.addStuff(); // Outputs "a" on one line, then undefined on another line.