扩展的对象功能:
//es5我们对于对象都是以键值对的形式书写,是有可能出现键值对重名 例如:
function a(anme,age){
return{
name: name,
age: age
};
}
//es6当参数可以名字相同的时候可以省略参:
function a(name,age){
return{
name,
age
};
}
//es6同样改进了为对象字面两方法复制的语法。es5为对象添加方法:
const p={
name:"lux",
getName:function(){
console.log(this.name)
}
}
//es6通过省略冒号于function关键子,将这个语法变得更简洁:
const p={
name:"lux",
Getname(){
console.log(this.name)
}
}
更方便的数据访问和解构:
代码解释:
const p={
"sname":"yaoming",
"age":20
}
const{name,age}=p;//解构 要求上面属性和这里的对象名称相同
console.log(`${sname}`);
const color={"red","blue"};
const{red,blue}=color;
console.log(`${red} ${blue}`);
展开运算符:
代码解释:
let num=["大娃","二娃"];
let num2=[...num,"三娃"];
for(let s of num2){
console.log(s);
}
class
可以把Java中的代码块直接写在JavaScript .js后缀的文件内进行封装操作
如:
class s{
constructor(){}
testmethod(){
console.log("我是helloword");
}
}
class a{
//es6中新型构造器
constructor(name){
this.name=name;
}
sayName(){
console.log("Myname is"+this.name);
}
}
class b extends a{
constructor(name){
super(name);
}
p(){
console.log("我是coding....");
}
}