//简洁表示法
{
let o = 1;
let k = 2;
// es5 写法
let es5 = {
o : o,
k : k
};
console.log( es5 ); // {o: 1, k: 2}
//es6 写法
let es6 = {
o , k
};
console.log( es6 ); // {o: 1, k: 2}
let es5_method = {
hello : function(){
console.log( 'es5_method' );
}
};
let es6_method = {
hello() {
console.log( 'es6_method' );
}
};
es5_method.hello();
es6_method.hello();
}
//属性表达式 将key值用[]包起来,ga该key值就是之前申明的变量;
{
let a = 'b';
let es5_obj = {
a : 'c',
b : 'c'
};
let es6_obj = {
[ a ] : 'c'
};
console.log(es5_obj);// {a: "c", b: "c"}
console.log(es6_obj);// {b: "c"}
}
//扩展运算符
{
// let {a,b,...c} = { a : 'test' , b : 'kill' , c : 'ddd' , d : 'ccc'}; 现在还不支持
}
//Object新增方法
{
//比较 Object.is() 与 === 功能相同
//字符串比较
console.log('字符串',Object.is( 'abc' , 'abc' ) , 'abc'==='abc');// 字符串 true true
// 对象比较
console.log('数组',Object.is( [] , [] ) , []===[]);// 数组 true true
// 拷贝
console.log( "拷贝" , Object.assign( {a : 'a'} , { b : "b" }));// 拷贝 {a: "a", b: "b"}
lettest= { k : 123 , o : 456 };
for( let [ key , value ] of Object.entries( test ) ) {
console.log( key , value );// k 123 o 456
}
}