[JavaScript基础] 对象 包装类

2018-11-19  本文已影响0人  Darkdreams

对象

属性的增、删、改、查

对象的创建方法
  1. plainObject 对象字面量 / 对象直接量
var obj = {
  // - 属性 :值
}
  1. 构造函数
    1). 系统自带的构造函数 Object()、Array()、Number()
var obj = new Object();
  obj.name = "Tom";
  obj.sex = "male";
  obj.say = function(){
  // - 
}
···

2). 自定义

// - 大驼峰式命名规则,首字母大写
function Person() {
  name : "Tom",
  sex : "male",
  say: function(){
    //-
  }
}
var person1 = new Person();
console.log(person1.sex)  // male

构造函数内部原理

  1. 在函数体最前面隐式的加上this = {};
  2. 执行 this.xxx = xxx;
  3. 隐式的返回this
function Person() {
  //var this = {
    name : "Tom",
    sex : "male",
    say: function(){
      //-
    }
  //}
  //return this
}

如果new,构造函数中return不能返回基础数据类型。


包装类

原始值不会有属性和方法

var str = "abcd";

str.length = 2;

console.log(str) // "abcd"

console.log(str.length) // 4    执行的时候相当于是new String(str).length
var str = "abc";

str += 1;   // "abc1"

var test = typeof(str);  //"String"

if(test.length == 6) {  
    test.sign = "abc"; //原始值没有属性和方法,所以不能写属性
}

console.log(test.sign);   // undefined
上一篇 下一篇

猜你喜欢

热点阅读