创建对象
1.对象字面量/对象直接量
var obj = {
key : value,
name : ‘king’,
}
2.构造函数
系统自带的构造函数 new Object( )
var obj = new Object( );
obj.name = ‘king’;
obj.age = 20;
自定义构造函数 名字使用大驼峰
function Car(color) {
this.color = color;
this.name = 'BMW';
this.height = '1400';
this.lang = '4900';
this.weight = 1000;
this.health = 100;
this.run = function () {
this.health--;
}
}
var car = new Car('red');
var car2 = new Car('green');
car.name = 'Maserati';
car1.name = 'Merz';
car1.run();
构造函数内部原理
在函数体最前面隐式加上this = {}
执行 this.xxx = xxx;
隐式返回this

对象的增,删,改,查
增加一个属性:obj.age = ‘20’
删除一个属性: delete obj.name name属性会被删除
更改一个属性: obj.age = ‘30’
查找一个属性: obj.age
对象枚举
//遍历 枚举 enumeration
for in
1、has OwnProperty( ) //查看属性是否是自己的
2、in //判断属性是否可以调用
// A instanceof B (A对象是不是B构造函数构造出来的)
//看A对象的原型链上有没有B的原型
3、instanceof
var obj = {
name: '12',
age: 123,
sex: 'male',
__proto__: {
lastName: 'king'
}
}
for (var prop in obj) {
//console.log(obj[prop])
if (obj.hasOwnProperty(prop)) {
console.log(obj[prop])
}
}
包装类
原始值没有属性,但是通过原始值调用属性,系统会通过原始值的·类型隐式调用 new方法将原始值包装一下,这个过程叫包装类
var str = 'abc';
srt.length ---> new String('abc').length
console.log(srt.length) ---> console.log(new String('abc').length)
其他
属性表示方法
obj.prop
obj[‘prop’]
本文详细介绍了JavaScript中创建对象的多种方式,包括对象字面量、构造函数和自定义构造函数,并深入解析了构造函数的内部实现原理。此外,还探讨了对象的增删改查操作,以及对象枚举和包装类的概念。
723

被折叠的 条评论
为什么被折叠?



