箭头函数1
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>箭头函数</title>
</head>
<body>
<script>
// ES6 允许使用 箭头 => 定义函数
// 声明一个函数
// let fn = function(){
// }
let fn = (a,b)=>{
return a+b;
}
// 调用函数
let result = fn(1,2);
console.log(result);
// 2.this 是静态的 this 始终指向函数声明时所在的作用域下的this值
function getName(){
console.log(this.name);
}
let getName2 = ()=>{
console.log(this.name);
}
// 设置window对象的name属性
window.name='浏览';
const SHOOL={
name:'liulan',
}
// 直接调用
getName();
getName2();
// 使用call方法调用 可以改变this 的指向
getName.call(SHOOL);
getName2.call(SHOOL);
// 2.不能作为构造实列化对象
// let Person(name,age)=>{
// this.name=name;
// this.age=age;
// }
// let me = new Person('x',30);
// console.log(me);
// 3.不能使用arguments变量 arguments存储实参的
// let fn=()=>{
// console.log(arguments);
// }
// fn(1,3,4);
// 4.箭头函数的简写
// 1.省略小括号,当形参有且只有一个的时候
// let add=(n)=>{
let add=n=>{
return n+n;
}
console.log(add(5));
// 2.省略花括号,当代码体只有一条语句的时候;此时return必须省略,而且语句的执行结果就是函数的返回值
// let pow =(n)=>{
// return n*n;
// };
let pow =(n)=>n*n;
console.log(pow(5));
</script>
</body>
</html>