JS对象、包装类

JS对象

对象的创建方法:

1 var Object = {} plainObject  对象字面量/对象直接量

2 构造函数(两种)大驼峰式命名规则

  1)系统自带的构造函数 Object()  new Object()

  2)自定义

3 Object.create(原型);

构造函数自定义方式内部原理:

构造函数三段式

function  Student(name,age,sex) {
     this.name = name;
     this.age = age;
     this.sex = sex;
}

首先实现第一步隐式变化:

1在逻辑的顶端生成 var this = {}

function  Student(name,age,sex) {
     //var this = {};
     this.name = name;
     this.age = age;
     this.sex = sex;
}

2然后根据形式参数的个数对this 进行增加属性并赋值

那么这个函数的 AO 可以大致理解为: AO{ this:{name:'zhangsan' ,age:18,sex:'male' };

3最后将这个return返回

function  Student(name,age,sex) {
   1//var this = {
   2//      name:"zhangsan",
    //      age:18,
    //      sex:"male"
    // };
     this.name = name;
     this.age = age;
     this.sex = sex;
   3//return this;
}

 

 Object.create(原型)创建对象

 

var person =  {name:"zsf",age:120};
var zsf = Object.create(person);

 包装类

  • Boolean

  • String

  • Number

原始值不能有属性和方法,当给它们添加属性的时候系统会自动进行包装类并销毁。

var num = new Number(3);
var str = new String("chen");

var num = 3;
num.len = 2;
//new Number(3).len =2; delete
console.log(num.len);//endefined

var str = "abcd";
str.length = 2;
//new String('abcd).length = 2; delete;
console.log(str);//abcd
//new String('abcd).length
//.length是string系统自带的属性。
console.log(str.length);//4

var str  = "abc";
str += 1;
var test = typeof(test);
if(test.length == 6){
    test.sign = "111";
    //new String(test).sign = "111";
}
//new String(test).sign
console.log(test.sign);
//undefined

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值