浏览 1295 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-06-14
18. javascript中的引用始终指向最终的对象,而并非引用本身。 var obj = {};// 空对象 var ref = obj;// 引用 obj.name = "objectA"; alert(ref.name);// "objectA" obj = ["one", "two", "three"];// obj指向了另一个对象 alert(ref.name);// "objectA" alert(obj.length);// 3 alert(ref.length);// undefined 19. javascript中new操作符的工作方式:首先,创建一个空对象,然后调用函数的apply方法,将这个空对象传入作为apply的第一个参数,即上下文参数 var triangle = new Shape("triangle",23); 相当于 var triangle = {}; Shape.apply(triangle, ["triangle",23]); 20. 柯里化就是预先将函数的某些参数传入,得到一个简单的函数,但是预先传入的参数被保存在闭包中 var adder = function(num) { return function(y) { return num + y; } } var inc = adder(1); var dec = adder(-1); alert(inc(99));// 100 alert(dec(101));// 100 alert(adder(100)(2));// 102 alert(adder(2)(100));// 102 21. 根据不同的浏览器,原型对象prototype有不同的实现,比如 var base = { name : "base", getInfo : function() { return this.name; } } var ext1 = { id : 0, __proto__ : base } var ext2 = { id : 9, __proto__ : base } alert(ext1.id); alert(ext1.getInfo()); alert(ext2.id); alert(ext2.getInfo()); 以上代码在firefox下可以跑,在ie下则有js错误 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |