zoukankan      html  css  js  c++  java
  • JavaScript原型

    原型

    定义

    • 每一个对象都有原型
    • 原型仍然是一个对象
    • 模拟实现面向对象的继承性   求原型 var list=[]; console.log(Array.prototype); console.log(list.proto); 给所有数字的原型添加方法 Number.prototype.add=function(number){ return number+this; } var num=100; console.log(num.add(500));

    原型链

    • 对象的原型还有原型
    • 对象除了可以使用自有属性还可以继承原型上的属性

           var arr=[];
          console.log(arr); //Array(0)
      
          console.log(arr.__proto__); //Array(0)
          console.log(arr.__proto__.__proto__); //object
      
          var obj={};
          console.log(obj); //object
          console.log(obj.__proto__);  //object
      
          function User(){
      
          }
          var u=new User();  
          console.log(u);  //user
          console.log(u.__proto__);  //object
          console.log(u.__proto__.__proto__);  //object
      
    • 判断属性是自有的还是原型继承的

          console.log(arr.hasOwnProperty("length"));  //true
          console.log(arr.hasOwnProperty("push")); //false
      
    • 创建对象并指定对象的类型(ECMA5)

          var o=Object.create(arr);
          console.log(o);  //Array
          console.log(o.constructor); //返回对象类型  函数
          console.log(o.__proto__); //Array(0)
  • 相关阅读:
    针对当前用户 对方法加锁
    二叉树
    return与析构续
    return与析构函数
    拷贝构造函数
    引用
    返回引用的函数值和参数的引用
    使用引用返回函数值
    邻接表--图 部分代码
    dec,hex and oct
  • 原文地址:https://www.cnblogs.com/zgh929/p/7417420.html
Copyright © 2011-2022 走看看