1.命名对象可以通过,对象名使用prototype,添加成员,匿名对象如果操作?
2.js在chrome浏览器中发现,对象.未知成员两次后,第一次成员未知undefined,后面成员就有了,什么鬼可以这样添加成员吗?
如 function a(){}
var b = new a();
b.c = 'a';----------undefined
b.c = 'a';----------OK,居然成功了?
不明白你说的匿名对象是什么概念
第一次添加之后就有值了啊
b是一个对象。
b.c = "a" 就是给b对象本身直接添加一个c属性。等同在构造函数a中这样:
function a(){
this.c = "a";
}
只不过在外面this要换成实际的实例对象b
与用prototype添加成员的区别是:
b.c = "a" 只是对b这一个实例对象本身直接添加属性,不会影响到a类的其它实例对象。
第一次是相当于添加所以在chrome控制台中打印就是undefined;第二次就是打印的第一次的结果已经添加上的