目录
3、ES6支持getter(获取属性)和setter(设置属性值)方法
一、函数
1、函数参数的默认值
ES6当中的函数的定义
2、箭头函数
(1)没有参数用户括号代替
let fun = ()=> { 函数体语句 }
var obj = {
uname:'张三',
age:25,
fun:()=>{//箭头函数
console.log('箭头函数')
}
}
obj.fun()
(2)只有一个参数,省略 ' ()'
let fn = arg => { 函数体语句 }
var obj = {
uname:'张三',
age:25,
fun:()=>{//箭头函数
console.log('箭头函数')
},
fn:arg=>{//箭头函数,只有一个参数是可以省略‘()’
console.log('参数是:'+arg)
}
}
obj.fun()
obj.fn('西安邮电大学')
(3)箭头函数本身因含有return的作用(函数体只有一条语句)
let add = (arg1 , arg2)=> arg1+arg2
等价于
let add = function(arg1 ,arg2){ return arg1+arg2 }
var obj = {
uname:'张三',
age:25,
fun:()=>{//箭头函数
console.log('箭头函数')
},
fn:arg=>{//箭头函数,只有一个参数是可以省略‘()’
console.log('参数是:'+arg)
},
add:(arg1,arg2)=>arg1+arg2 , //箭头函数的函数体不带‘{}’并且只有一条语句,则隐含return作业
// 等价于 add:(arg1,arg2)=>{return arg1+arg2}
}
obj.fun()
obj.fn('西安邮电大学')
let s = obj.add(12,23)
console.log(s)
(4)在箭头函数中若要使用隐式返还的功能返回一个对象,则必须用‘()’将对象括起来
let test = ( ) =>( { } )
var obj = {
test:()=>({
name:'张三',
age:25
})
}
console.log(obj.test())
(5)在箭头函数·中没有this绑定
var obj = {
uname:'张三',
age:25,
f1:function(){ //非箭头函数中默认绑定了this(即将当前对象和this绑定在一起)
console.log('姓名:'+this.uname) //this代表obj
},
f2:()=>{//在箭头函数中this和当前对象没有进行绑定