对象成员简写
/**
* 对象成员简写
*/
//声明变量
let name = 'chen';
let age = 18;
let gender = 'man';
let score = 100;
//声明对象
//对象里面有name age gender score
//要对象属性有上面变量的值
//es5
// var obj = {
// name:name,
// age:age,
// gender:gender,
// score:score,
// sayHi:function(){
// console.log('hehe,ie');
// }
// }
// console.log(obj);
// obj.sayHi();
//es6 对象成员简写
var obj = {
name,//就相当于name:name
age,
gender,
score,
// fenshu,//fenshu:fenshu 因为没有对应的变量名的话 所以会报错
fenshu:score,//可以穿插不是简写的
sayHi(){
//sayHi() 相当于 sayHi:function()
console.log('hehe,ie');
}
}
console.log(obj);
obj.sayHi();
扩展(展开)运算符
对象展开
/**
* 对象展开 ...
*/
//声明对象
let chinese = {
skin:'yellow',
hair:'black',
sayHi(){
console.log('你吃了吗?');
}
}
//声明对象
let zhubo = {
skill:'c t r l',
song:'ji ni ta mei'
}
//声明对象
let linge = {
// skin:'yellow',
// hair:'black',
// sayHi(){
// console.log('你吃了吗?');
// },
// skill:'c t r l',
// song:'ji ni ta mei'
...chinese,//意思就是 通过 ... 对象扩展 吧chinese对象中的内容拿过来
...zhubo,
gender:'man',
hair:'green'//如果上面扩展的对象中有与这里的属性相同的 就看是在下面就是谁的
}
console.log(linge);
数组展开
/**
* 展开运算符...
* 数组展开
*/
//1.
// let arr1 = [10,20,30];
// let arr2 = [...arr1,200,300];//...直接将arr1的内容带过来了 并且放在对应的位置
// console.log(arr1);//[10,20,30]
// console.log(arr2);//[10,20,30,200,300]
//2.
//求数组最大值
let arr1 = [10,8,7,66,65,34];
//可以用
let max1 = Math.max.apply(Math,arr1);
console.log(max1);
//还可以用 数组扩展语法
let max2 = Math.max(...arr1);//...arr1 就直接将所有的数组的元素放进了这个里面
console.log(max2);