/**
* 测试return
*/
var obj = (function(){
var name = "William";
return {
getName : function(){
console.info(this.name);
}
}
})();
obj.getName();
如代码所示,我就想把name封装起来,向外提供getName()公共方法,但输出的时候提示undefined。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
我记得你之前问过一个相似内容的问题……
那个啥,我建议你先去补补基础知识,不要想当然的编程……
js的私有变量不是这样的,你得这样
这里你需要区分两个东西,一个是变量的作用域,一个是函数的上下文。变量的作用域在定义的时候就已经确定了,而函数的上下文也就是 this的指向在运行的时候才能够确定。 你这里把两者混为一谈了。也就是说this在运行时指向 obj对象,而obj对象并没有name属性
额。。。。。
name是变量不是属性对 你加班确实加太久了