一:自有属性
var obj01 = {};
obj01.name = 'laney';
obj01.action = function () {
console.log('function');
}
obj01['from'] = '中国';
Object.defineProperty(obj01, 'age', {
configurable: true,
enumerable: true,
value: "20",
writable: true
});
var o2 = {};
o2.x = 1;
var p = Object.create(o2);
p.__proto__ === o2
var k1 = Object.create(null);
var m2 = Object.create(Object.prototype);
var m3 = Object.create(Object.prototype, {
name: {
value: 'alice',
configurable: true
}
});
var ob01 = {
name: '122',
age: '10'
}
var ob02 = {
age: '20'
}
var ob03 = {
run: 'ok'
}
const copy = Object.assign({}, ob01, ob02, ob03);
const copy2 = Object.assign(ob01, ob02, ob03);
var onePerson = {
age: '20',
weight: 50,
name: 'alice'
};
var otherPerson = Object.create(onePerson);
otherPerson.name = 'laney';
delete otherPerson.name
delete otherPerson.weight
var flower = {
name: '玫瑰',
color: 'red'
};
var flower02 = Object.create(flower);
flower02.size = '20';
flower02.from = 'china';
Object.defineProperty(flower02, 'age', {
value: "20",
writable: true
});
'name' in flower02
'size' in flower02
flower02.hasOwnProperty('name')
flower02.hasOwnProperty('size')
var keys = Object.keys(flower02);
var values = Object.values(flower02);
var p2 = Object.getOwnPropertyNames(flower02);
for (var key in flower02) {
console.log('------');
console.log(key);
console.log(flower02[key])
}
二:访问器属性
var man = {
name: "张三",
age: 24,
color: 'red'
};
var person1 = JSON.stringify(man);
var person2 = JSON.stringify(man, ["name", "age"]);
var person3 = JSON.stringify(man, ["name", "age"], 8);
var obj = {};
Object.defineProperty(obj, 'age', {
configurable: false,
writable: true,
enumerable: true,
value: 22
});
delete obj.age
obj.age = 30
Object.defineProperties(obj, {
name: {
value: 'laney',
writable: true,
enumerable: true,
configurable: true
},
age: {
configurable: false,
writable: false,
enumerable: true,
value: 22
}
})
obj.age = 30
var emp = {
_name: 'laney',
_age: '20'
};
Object.defineProperty(emp, 'otherName', {
enumerable: true,
configuration: true,
get: function () {
return this._name
}
});
emp.otherName
emp.otherName = 'alise';