一.写在开头
上一篇文章,我们介绍了数组,字符串的方法,下面我们来写重点对象以及函数
对象
对象新增方法
- Object.assign 合并并复制
- Object.keys() 键的集合
- Object.values()值的集合
- Object.create()创建新对象
创建一个新的对象并以源对象作为prototype原型
var parent = {name : "mumu" , say (){alert(this. name)}}
var obj = object.create(parent);
//bj的protoytpe原型上拥有parent所有方法和属性
对象的简写
- 如果对象的键和变量名一致可以简写
var name ="mumu"; var age=18; var obj= {name ,age , leg; 2]; //相当于obj= {name : name , age : age,leg: 2]
- 对象函数可以省略function
var obj = { name : " mumu" , say :fucntion(){...}} //可以简写为 var obj = {name : "mumu" , say (){...]}
对象的属性可以动态拼接
var n = "nick";
var m = “name" ,
var obj = {name : "mumu” , [ n+m] : ”小"+this.name }
// obj = {name : "mumu" , ""nickname": ”小mumu"}
ES6函数
函数的默认参
// 当参数是undefined时候取默认参数
function say(name,age=28){
alert("大家好我的名字是"+name+"今年"+age)
}
say("老曾",17);
say("小小曾",undefined);
函数的拓展参(实参,执行的时候)
var arr = ["刘大大","邢大大","张大大","王大大"];
metting.apply(null,arr);
metting(...arr);
函数的不定参(形参,定义的时候)
function add(...args){
var total = args.reduce((a,b)=>a+b);
console.log(total);
}
add(2,3);
add(1,2,5);
function metting(p1,p2,p3){
console.log("今天来开会的有"+p1+p2+"和"+p3)
}
箭头函数⭐
- 箭头函数也就是函数简写
- =>左边是参数,右边是返回值也是执行语句
- 箭头函数如果参数不是1个需要用()包裹
- 如果执行语句多行{}包裹
var fun3 = age=>{
if(age>18){
alert("可以参军")
}else{
alert("小屁孩一个")
}
}
// fun3(19);
- 如果返回值数对象用()包裹对象
var fun4 = (age,name)=>({name:name,age:age,msg:"大家好我是"+name})
var obj = fun4(17,"小小曾");
console.log(obj);
- this指向函数的上一层作用域
- 不能作为构造函数
var age = 50;
var obj = {
age:18,
grow:()=>{
setInterval(()=>{
this.age++;
console.log(this.age);
},3000)
}
}
obj.grow();
var grow = obj.grow;
window.grow()
一.写在结尾
学习过程是艰苦的,但你学到知识的那一刻是开心的🌞