ES6之箭头表达式
ES2015新增的特性箭头表达式,省去了关键词function,文中``双撇号和${}是Typescript的语法。以下是一些学习笔记:
1.单行箭头表达式:
var foo = (arg1,arg2) => arg1 + arg2;
//上述表达式相当于
var foo = function (arg1, arg2) { return arg1 + arg2; };
2.多行箭头表达式(必须使用{}大括号):
var foo = (arg1, agr2) => {
return arg1 + agr2;
}
//以上表达式相当于
var foo = function (arg1, arg2) {
return arg1 + arg2;
};
3.无参数:
var foo = () => {}
//以上表达式相当于
var foo = function () {}
4.一个参数(无需使用()小括号):
var foo = arg => {
return arg*arg;
}
//以上表达式相当于
var foo = function (arg) {
return arg*arg;
}
5.栗子:
var arr = [1,2,3,4,5];
console.log(arr.filter(value => value%2 == 0)) //以上代码相当于
var arr = [1, 2, 3, 4, 5];
console.log(arr.filter(function (value) { return value % 2 == 0; })); //[2,4]返回被2整除的值
6.箭头表达式中的this关键字:
//(1)ES5方式(计时器中无法找到this)
function Foo (name:string) {
this.name = name;
setInterval(function () {
console.log(`name is: ${this.name}`);
},1000);
}
var foo = new Foo('莎士比亚');
//返回name is---无法找到this.name
//(2)ES6方式(计时器中可以找到this)
function Foo (name:string) {
this.name = name;
setInterval(() => {
console.log(`name is: ${this.name}`);
},1000);
}
var foo = new Foo("莎士比亚");
//name is: 莎士比亚
ES6之箭头表达式的更多相关文章
- es6 箭头函数【箭头表达式】
箭头函数,通过 => 语法实现的函数简写形式,C#/JAVA8/CoffeeScript 中都有类似语法.与函数不同,箭头函数与其执行下文环境共享同一个 this.如果一个箭头函数出现在一个函数 ...
- 初步探究ES6之箭头函数
今天要介绍的是ES6中的箭头函数. 语法 我们先来看看箭头函数的语法: ([param] [, param]) => { statements } param => expression ...
- TypeScript02 方法特性【参数种类、参数个数】、generate方法、析构表达式、箭头表达式、循环
1 方法的参数 1.1 必选参数 调用方法时实参的个数必须和定义方法时形参在数量和类型上匹配 /** * Created by Administrator on 2017/8/2 0002. */ f ...
- ES6中箭头函数的作用
我们知道在ES6中,引入了箭头函数,其本质就是等同有ES5中的函数.类似于下面的写法: let test1=() => “abc”; let test2=() => { return “a ...
- Es6中箭头函数与普通函数的区别
Es6中箭头函数与普通函数的区别? 普通function的声明在变量提升中是最高的,箭头函数没有函数提升 箭头函数没有属于自己的this,arguments 箭头函数不能作为构造函数,不能被new,没 ...
- typescript 箭头表达式
箭头表达式:用来声明匿名函数,消除传统匿名函数的this指针问题 1.无参 var sum = () => {} 2.一个参数 var sum = arg2 => {} 3.多个参数 va ...
- js里typeof和instanceof和箭头表达式要注意的地方,以及其他
如果学过类似C#这样的语言,然后定义两个类class Mu{}和class Ku{},那么显然typeof Mu != typeof Ku的,但是在js里则不是这样,对于Mu和Ku的对象进行typeo ...
- es6的箭头函数和es5的function函数区别
一.es6的箭头函数es6箭头函数内部没有this,使用时会上朔寻找最近的this不可以做构造函数,不能使用new命令,因为没有this函数体内没有arguments,可以使用rest参数代替不能用y ...
- Es6 之箭头函数 初学
不积跬步,无以至千里;不积小流,无以成江海! // ES5 var selected = allJobs.filter(function (job) { return job.isSelected() ...
随机推荐
- [skill][https][ssl/tls] HTTPS相关知识汇总
结论前置: A 身份验证 证书, 服务器证书 B 密钥协商 RSA DHE / ECDHE PSK C 加密通信 加密通信采用对称加密,使用B阶段协商出来的密钥. B 阶段如果使用 RSA 协 ...
- Oracle 分区表 收集统计信息 参数granularity
GRANULARITY Determines the granularity of statistics to collect. This value is only relevant for par ...
- Appium入门(7)__Appium Desired Capabilities
Desired Capabilities 是由多个键值对组成,代表移动设备相关信息.由Appium Client向Appium Server发送. 但无论Appium Client使用何种语言,最终是 ...
- php 数值类型
一.整形 1. 常见的整形 echo 1234; // 十进制数 echo -123; // 负数 echo 0123; // 八进制数 (等于十进制 83) echo 0x1A; // 十六进制数 ...
- python练习题-day1
1.使用while循环输入 1 2 3 4 5 6 8 9 10 count=0 while count<10: count+=1 if count==7: continue print ...
- passwd 修改密码
[root@localhost ~]# passwd # 修改 root 用户的密码 [root@localhost ~]# passwd test # 修改指定用户的密码
- 预见2019吴晓波年终秀演讲PPT整理
在2018年倒数的第二天12月30日晚上7点在广东珠海横琴拉开帷幕,吴晓波以一场“预见2019”的年终盛典,和大家一起回望即将告别的跌宕一年,细数过去的焦虑和改变,瞭望未来的激越和走向.下面我们一起来 ...
- 微信公众号ID也可以修改了!
差不多一年前,微信团队宣布个人类帐号一个自然年内可主动修改两次名称,那一天大家奔走相告纷纷修改成自己早就心仪的名字,有人猛然发现公众号名字改了,可ID还是xiaopipi(小屁屁)这可如何是好,洗不去 ...
- finecms在任意页面调用栏目名称和地址等
finecms如何调用栏目名称和地址呢?在任意页面.我们有时需要在不同的页面调用某个栏目名,怎么调用比较快呢?ytkah整理了一些快速调用语句方便查找 栏目名称:{dr_cat_value(栏目id, ...
- RzCheckTree基本使用
procedure TForm1.Button1Click(Sender: TObject); var i: Integer; begin //循环读取勾选节点代码及内容 //StateIndex 1 ...