****关于object-prop-name
eg:
let food={};
food.deser='蛋糕';
console.log(food);
显示:
但是要注意声明对象内属性的语法!
eg:
food.hot fruit='水果';
console.log(food);
这样中间有空格的话就会报错,所以正确的语法是:
food['hot fruit']='水果';
console.log(food);
显示的就是对象里面总有的子集:
还有一种方式,对比较特殊的属性名提前进行赋值声明;
let food={};
let drink=['hot fruit'];
food.deser='蛋糕';
// food.hot fruit='水果';
food.drink='水果';
console.log(food);
仍然是可以正确显示的:
![](https://img-blog.csdn.net/20170816092856127?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveXlqb3VybmV5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
******** get set
get 是获取参数,set是设置参数
eg:
class chef{
constructor(food){
this.dish=[];//
}
get menu(){
return this.dish;
//这里是返回获取dish数组的内容
}
set menu(dishes){
this.dish.push(dishes);
//这里是设置dish里面的内容,也就是向dish数组里面加入 形参变成实参的内容,即dishes
}
}
let yarong=new chef();
console.log(yarong.menu='水果');
// 这里的‘水果’=dishes;也就是向dish数组中加入了第一个元素 是: dish['水果'];
console.log(yarong.menu='烤鸭');
console.log(yarong.menu);//这里是返回dish 数组中所有设置的元素
返回的结果:![](https://img-blog.csdn.net/20170816101346050?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveXlqb3VybmV5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
******static class的静态方法
类相当于实例的原型,所有在类中定义的方法,都会被实例继承。如果在一个方法前,加上static关键字,就表示该方法不会被实例继承,而是直接通过类来调用,这就称为“静态方法”。
eg:
class chef{
static cook(food){
console.log(food);
}
}
chef.cook('水果盘')
结果显示:
![](https://img-blog.csdn.net/20170816104538627?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveXlqb3VybmV5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)