Array.Call(o)对原型继承做了什么?
what does Array.Call(o) do with prototypical inheritance?
我在某处读到:
var o = new Array();
实际上在执行以下操作:
var o = {};
o.__proto__ = Array.prototype;
Array.call(o)
我的问题是Array.call(o)在做什么?
如果我有o2 = {};
Array.call(o2)做什么?
TIAJD
JavaScript中的new操作符有三个基本任务。首先,它创建一个新的空对象。接下来,它设置新对象的proto属性,以匹配被调用函数的prototype属性。最后,操作符调用函数并将新对象作为"this"引用传递给
这里的函数是数组构造函数array ()第一步是创建一个空对象
var o = {};
第二步是设置proto属性
o.__proto__ = Array.prototype;
然后,最后一步,调用函数,并传递新对象作为引用
Array.call(o)
相关文章:
- JavaScript-出于什么原因…继承
- 什么'这两种继承策略之间的区别是什么
- javascript继承中正确的原型做作是什么
- 我的Javascript对象继承自什么
- 它继承的字符串原型是什么
- Javascript中的继承,我在这里做错了什么
- 类的继承和扩展有什么区别
- 什么是原型组成或继承
- JavaScript中的差异继承是什么
- 使用原型继承的javascript代码中的对象生存期是什么
- 什么时候应该使用继承作用域,什么时候不应该
- Object.create(BaseObject)和util的区别是什么?继承(MyObject BaseObject)
- 继承方法(原型)和静态方法(表达式)的区别是什么?
- 在使用继承时,构造函数和原型对象有什么区别吗?
- 这两种类型的继承有什么区别?
- “这”是什么?参考JavaScript中的寄生继承
- 在javascript中继承了DOM元素对象!这段代码有什么问题?
- AppendChild不工作!,从DOM元素对象继承.我做错了什么?
- Array.Call(o)对原型继承做了什么?
- 原型继承-什么时候需要设置'prototype.constructor'属性