笔试的时候遇到这个题
function ClassA() {
var value=4;
this.getValue= function()
{
return value;
}
this.setValue= function(value)
{
this.value=value;
}
var classA = new ClassA();
document.write(classA.getValue());
classA.setValue(1);
document.write(classA.getValue());
document.write(classA.value);
为什么输出结果是441
this.value 是实例属性 每个实例独有且不相同,var value 其实就是局部变量 实例通过属性访问器.访问不了 它不是原型属性ClassA.prototype.value 是原型属性 所有的实例都共享该属性 可以通过属性访问器.访问 所以以上的说法不准确
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。