• JS学习之包装对象、hasOwnProperty、constructor


    包装对象:
    在JS内部,当我们去调用字符串、数字、布尔值这些基本数据类型的属性或者方法的时候,JS会在内部先把这些数据类型转成一个对应的对象类型(包装对象),然后再去调用包装对象身上的属性或者方法。

    var str="xbj";//这个过程等同var str=new String('xbj');,JS内部帮我们做了
    console.log(str.length); //3

    hasOwnProperty:判断一个属性是不是自己对象身上的
    语法:对象.hasOwnProperty(属性)
    返回:
    true 自身属性
    false 非自身属性
    注意:
    1、这个方法是Object身上的方法
    2、只会找自己对象身上是否具有要查找的属性

         function Person(name){
                this.name=name;
          }
         Person.prototype.country='china';//在原型身上添加一个属性
         var p=new Person('xubj'); // 实例化一个对象
         console.log(p.name);  // xubj
          console.log(p.country); // china
          console.log(p.hasOwnProperty('name')); // true
          console.log(p.hasOwnProperty('country')); // false
          // 因为country并不是对象p身上的,是Person构造函数原型身上的属性

    constructor:每个对象身上都会有该属性,默认指向该对象对应的构造函数,这个属性不是放在对象身上,放在对应的原型对象身上

    作用:查看对象的构造函数
    语法: 对象.constructor
    返回值: 对象的构造函数

       function Person(name){
                this.name=name;
          }
       Person.prototype.country='china';
       var p=new Person('xubj');
       console.log(p);  // xubj
          console.log(p.constructor);  //  返回值是Person这个构造函数
          console.log(p.constructor===Person); // true

  • 相关阅读:
    提升PHP执行效率的一些小细节
    linux文件处理命令
    C# file操作
    C# MD5
    C# guid
    C# Path类 Directory类
    MarkDown学习
    从GitHub建站迁移到服务器(Java环境)
    sonarqube在windows上软件安装,配置及使用
    【优化】记录一次方法性能优化
  • 原文地址:https://www.cnblogs.com/xubj/p/9881966.html
Copyright © 2020-2023  润新知