javascript中的New是一种语法糖果。对于学习过C、java、c#等面向对象语言的人来说,他们认为js中的类和对象是有区别的。js中没有类,一切都是对象,比java更透彻。
其实new的过程就是创建一个新的对象,将新图像的原型设置为构造函数的原型。在使用New的过程中,共有三个对象参与了协作。构造函数是第一个对象,有两个原型对象。新的空对象是第三个对象,最后返回一个空对象。但是,这个空对象不是空的,而是已经包含了原型引用(_proto_)。
步骤如下:
(1)创建一个空对象obj。
(2)让空对象的_ _ proto _ _成员(IE没有这个属性)指向构造函数的原型成员对象。
(3)使用apply调用构造函数,这是绑定到空对象obj的。
(4)返回空对象对象。
你可以自己写一个函数,而不用new。示例代码如下:
函数NEW _ OBJECT(Foo){ var obj={ };物体。_ _ proto _ _ _=Foo . prototype;物体。__原型_ _。构造函数=FooFoo.apply(obj,arguments)返回obj;}上面提到的javascript中新运算符的原理就是边肖与大家分享的所有内容。希望能给大家一个参考,多支持我们。