zoukankan      html  css  js  c++  java
  • new operator

    new operator

      When the code new Foo(...) is executed, the following things happen:

    1. A new object is created, inheriting from Foo.prototype.(即新建对象的 __prototype__ 属性与 Foo.prototype 一样)
    2. The constructor function Foo is called with the specified arguments and this bound to the newly created object. new Foo is equivalent to new Foo(), i.e. if no argument list is specified, Foo is called without arguments.
    3. The object returned by the constructor function becomes the result of the wholenew expression. If the constructor function doesn't explicitly return an object, the object created in step 1 is used instead. (Normally constructors don't return a value, but they can choose to do so if they want to override the normal object creation process.)

      You can add a shared property to a previously defined object type by using theFunction.prototype property. This defines a property that is shared by all objects created with that function, rather than by just one instance of the object type. The following code adds a color property with value null to all objects of type car, and then overwrites that value with the string "black" only in the instance object car1

      

    Function

      Function objects inherit from Function.prototype.  Function.prototype cannot be modified. In JavaScript every function is actually a Function object.

      prototype和__proto__是完全不一样的两个东西。

      

      __proto__用于实现继承。

      

      

      

  • 相关阅读:
    在Vue脚手架里面使用font-awsome
    在webstorm上使用git
    smartGit继续使用的方法
    工作笔记
    “老司机”传授给“小白”的职业经验
    兼容性问题(目前遇到的)
    web前端页面项目经验总结
    jquery中隐藏div的几种方法
    懒加载和预加载
    JS 中的事件绑定、事件监听、事件委托
  • 原文地址:https://www.cnblogs.com/tekkaman/p/5212891.html
Copyright © 2011-2022 走看看