TypeScript箭头表达式与循环
1.箭头表达式
// 用来声明匿名函数,消除传统匿名函数的this指针问题
var sum = (arg1,arg2)=>{ return arg1+arg2};
var array = [1,2,3,4];
console.log(array.filter(value => value%2==0));
function getStock(name:string){
this.name = name;
setInterval(function () {
console.log("this name is:"+this.name);
},1000)
}
var stock = new getStock('zhaodong');//this name is: 后边就没有输出的值,这是传统javascript的this关键字存在的问题
function getStock2(name:string){
this.name = name;
setInterval(()=> {
console.log("this name is:"+this.name);
},1000)
}
var stock1 = new getStock2('zhaodong');//结果便是this name is:zhaodong,只是声明匿名函数的方式不一样
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2.循环
var myArray = [1,2,3,4]
myArray.desc = 'four number';
//会自动忽略掉desc这个属性,在forEach语句中,不支持break,不能跳出循环
//myArray.forEach(value =>{console.log(value);})
//for循环,循环的对象或者是数据集合里边属性的名字,任何一个对象或者结合都是一个键值对
for(var i in myArray){
console.log(i);
}//这样的结果是0 1 2 3 desc
for(var i in myArray){
console.log(myArray[i]);
}//这样的结果是1 2 3 4 four number
//for..of..循环,也会忽略掉添加的属性,循环是可以被打断的
for(var n of myArray){
console.log(n);
}//这样的结果是1 2 3 4
for(var n of myArray){
if(n>2) break;
console.log(n);
}//这样的结果是1 2
for(var k of 'four number'){
console.log(k);
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
