/*
* @Author: Robyn
* @Date: 2017-10-31 20:27:24
* @Last Modified by: Robyn
* @Last Modified time: 2017-10-31 20:27:24
*/
// a.箭头函数没有自己的this,函数体内部写的this,指向的是外层代码块的this
// this.name = "迪丽热巴";
// this.age = 15;
// var girlFriend = {
// name: "刘亦菲",
// age: 16,
// // showLove: function() {
// // console.log("大家好,我叫" + this.name + "今年" + this.age + "岁了,追命,么么哒!");
// // }
// showLove: ()=> {
// console.log("大家好,我叫" + this.name + "今年" + this.age + "岁了,追命,么么哒!");
// }
// };
// girlFriend.showLove();
// b.箭头函数内部的this是定义时所在的对象,而不是使用时所在的对象并且不会改变
// var girlFriend = {
// name: "刘亦菲",
// age: 16,
// showLove: function() {
// var fn = ()=> {
// console.log(this.name);
// }
// return fn;
// }
// };
// var fn = girlFriend.showLove();
// var obj = {
// name: "迪丽热巴"
// }
// fn.call(obj);
// c.箭头箭头函数不能用作构造函数
// var GirlFriend = function(name,age) {
// this.name = name;
// this.age = age;
// }
// var myGf = new GirlFriend("热巴",15);
// console.log(myGf.name,myGf.age);
// var GirlFriend = (name,age)=> {
// this.name = name;
// this.age = age;
// }
// var myGf = new GirlFriend("热巴",15);
// console.log(myGf.name,myGf.age);
// d.箭头函数内部不存在arguments,箭头函数体中使用的arguments其实指向的是外层函数的arguments
// function fn() {
// console.log(arguments);//{ '0': 1, '1': 2, '2': 3, '3': 4, '4': 5, '5': 6, '6': 7, '7': 9 }
// var fn1 = function() {
// console.log(arguments);//{ '0': 'a', '1': 'b', '2': 'c' }
// }
// return fn1;
// }
// var fn1 = fn(1,2,3,4,5,6,7,8,9);
// fn1("a","b","c");
function fn() {
console.log(arguments);
var fn1 = ()=>{
console.log(arguments);
}
return fn1;
}
var fn1 = fn(1,2,3,4,5,6,7,8,9);
fn1("a","b","c");
04_12.箭头函数的注意点.js
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。