20190530

数组forEach和map的区别

map会返回一个新数组, forEach不会

所以如果只是需要循环,但是不需要对数组本身进行操作的时候,可以使用forEach, 否则可以考虑使用map

1. ts定义数组:

let a: any[] = [1,2,3];
let arr: Array<number> = [1, 2]; //泛型数组

2. 函数的定义

//void表示该函数没有返回值
function hello(): void {
    alert("Hello Runoob");
}
//该函数需要返回一个string 
function hello(): string {
  return 'string';
}
// 剩余参数,当函数参数不确定的时候,使用剩余参数来获取传参
function hello(a: string, ...restOfName: string[]) {
} 
//不必填参数 
function hello: void (a:string, y?:any) {};  //这里的y就是不必填参数,调用hello方法时,可传也可不传
hello('p', 'dd'); 
hello('p')

3. 函数重载

定义多个函数,函数的方法名称都相同,但是参数列表都不相同

4. 数组方法

a. reduce

var total = [0, 1, 2, 3].reduce(function(a, b){ return a + b; }); 
console.log("total is : " + total );  // 6

b.slice返回一个新数组, splice直接对原有数组进行操作

c. some返回数组中的所有元素是否满足某个条件, 

  filter返回数组中满足某个条件的新数组

5. 联合类型

var val:string|number;
val = 12; 
console.log("数字为 "+ val); 
val = "Runoob"; 
console.log("字符串为 " + val)​​​​​​​;


var arr:number[]|string[]; 

6. 接口可以多继承

interface IParent1 { 
    v1:number 
} 
 
interface IParent2 { 
    v2:number 
} 
 
interface Child extends IParent1, IParent2 { } 
var Iobj:Child = { v1:12, v2:23} 
console.log("value 1: "+Iobj.v1+" value 2: "+Iobj.v2)

7. 关键字

  • public(默认) : 公有,可以在任何地方被访问。

  • protected : 受保护,可以被其自身以及其子类和父类访问。

  • private : 私有,只能被其定义所在的类访问。

  • static: 用于定义类的数据成员(属性和方法)为静态的,静态成员可以直接通过类名调用。

 

转载于:https://my.oschina.net/u/4085373/blog/3056049

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值