zoukankan      html  css  js  c++  java
  • JavaScript 对象和包装类

    对象的创建方法

    • {}
    var obj = {} 
    • 系统自带的构造函数
    var obj = new Object()//Array()//Number()
    • 自定义的构造函数
    function Person(){
    
    }   
    var person1 = new Person()

    注:构造函数:大驼峰命名规则 TheFirstName 

           普通函数:小驼峰命名规则  theFirstName

    构造函数内部原理(必须加New)

    • 在函数体最前面隐式的加上this={}
    • 执行this.xxx=xxx
    • 隐式的返回this
    function Person(name,age){
             //var this={}; 隐式
             this.name=name;
             this.age=age;
    
             //return this隐式
    }   
    var person1 = new Person("zhangsan",18)

    注:构造函数显示返回对象,则返回对象

           构造函数返回原始值,则不受影响,继续返回this

    包装类

    • new String()
    • new Boolean()
    • new Number()

    包装类之后就有属性和方法了,原始值没有属性和方法

    var num =4;
    
    //new Number(3).len=3; 销毁
     num.len=3;
    
    //new Number(3).len=3; 销毁
    console.log(num.len);

    以上过程原始值可以访问属性。经历了隐式的包装类,每次包装完 销毁。

    注:undefined和null不可以设置属性值

    例1:

    // var str = "abcd";
    // str.length=2;
    // new string("abcd").length=2 销毁
    // console.log(str)//abcd

    例2:

    var str = "abc";
     str += 1;
    var test = typeof (str);
     if (test.length == 6) {
          test.sign = "typeof的返回结果";
    }
    console.log(test.sign); //undefinde

    typeof返回string字符串

    ---恢复内容结束---

    对象的创建方法

    • {}
    var obj = {} 
    • 系统自带的构造函数
    var obj = new Object()//Array()//Number()
    • 自定义的构造函数
    function Person(){
    
    }   
    var person1 = new Person()

    注:构造函数:大驼峰命名规则 TheFirstName 

           普通函数:小驼峰命名规则  theFirstName

    构造函数内部原理(必须加New)

    • 在函数体最前面隐式的加上this={}
    • 执行this.xxx=xxx
    • 隐式的返回this
    function Person(name,age){
             //var this={}; 隐式
             this.name=name;
             this.age=age;
    
             //return this隐式
    }   
    var person1 = new Person("zhangsan",18)

    注:构造函数显示返回对象,则返回对象

           构造函数返回原始值,则不受影响,继续返回this

    包装类

    • new String()
    • new Boolean()
    • new Number()

    包装类之后就有属性和方法了,原始值没有属性和方法

    var num =4;
    
    //new Number(3).len=3; 销毁
     num.len=3;
    
    //new Number(3).len=3; 销毁
    console.log(num.len);

    以上过程原始值可以访问属性。经历了隐式的包装类,每次包装完 销毁。

    注:undefined和null不可以设置属性值

    例1:

    // var str = "abcd";
    // str.length=2;
    // new string("abcd").length=2 销毁
    // console.log(str)//abcd

    例2:

    var str = "abc";
     str += 1;
    var test = typeof (str);
     if (test.length == 6) {
          test.sign = "typeof的返回结果";
    }
    console.log(test.sign); //undefinde

    typeof返回string字符串

  • 相关阅读:
    一次蜿蜒曲折的RFID破解之路
    无线安全渗透测试套件WiFi-Pumpkin新版本发布
    交易系统 1代
    angular-ui分页组件
    付款
    [译]AngularJS Services 获取后端数据
    [译]AngularJS中DOM操作
    [译]AngularJS $apply, $digest, 和$evalAsync的比较
    Angular $watch
    AngularJS中的表单验证
  • 原文地址:https://www.cnblogs.com/FashionDoo/p/10525761.html
Copyright © 2011-2022 走看看