遍历(map)

Array.prototype.map() - JavaScript | MDN

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
数组.map<返回值类型>((数组项,索引)=>{ return xxx })
// 如果返回值的类型编译器无法推断,就需要自行设置

const numArr: number[] = [1, 2, 3, 4, 5]
const numArr2: number[] = numArr.map((v => {
return v * 2
}))
const strArr: string[] = numArr.map((v => {
return (v * 2).toString()
}))

interface FoodInfo {
name: string
price: number
}

const foodArr: string[] = ['西兰花', '西葫芦', '西红柿', '西北风']
foodArr.map<FoodInfo>((v => {
return {
name: v,
price: Math.random() * 11 + 5
}
}))

筛选(filter)

Array.prototype.filter() - JavaScript | MDN

1
2
3
4
5
6
7
8
9
Array.prototype.filter() - JavaScript | MDN
数组.filter((数组项:类型,索引:number)=>{
return true // 或者可以解析为 true 的值 需要这一项
return false // 或者可以解析为 false 的值 不需要这一项
})

const payItemList = list.get().filter((billItem:BillItem)=>{
return billItem.type===BillType.Pay
})

求和(reduce)

Array.prototype.reduce() - JavaScript | MDN

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
28
29
30
31
32
33
34
35
36
37
38
39
40
Array.prototype.reduce() - JavaScript | MDN
// 纯数值类数组求和
reduce((上一次累加结果,当前元素值)=>{})
// 对象数组求和
reduce((上一次累加结果,当前元素值)=>{}, 初始值)

const arr = [5, 12, 8, 130, 44]

const res = arr.reduce((a, b) => {
// return a-b
return a + b
})


const foods: Food[] = [
{
name: '西兰花',
price: 6,
count: 2
},
{
name: '西红柿',
price: 3,
count: 3
},
{
name: '榴莲',
price: 30,
count: 2
},
{
name: '葱花',
price: 1,
count: 10
}
]
const total = foods.reduce((a, b) => {
return a + b.price * b.count
}, 0)
console.log('total:', total)

排序(sort)

Array.prototype.sort() - JavaScript | MDN

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
28
29
30
31
32
33
34
35
36
// 自定义排序规则
数组.sort((第一个比较元素,第二个比较元素)=>{
return 大于0// a 会调换到 b 的后面
return 小于0// a 会继续留在 b 的前面
return 0 // 不变
})

const arr = [5, 12, 8, 130, 44]

arr.sort((a,b)=>{
// return a-b
return b-a
})

// 对象数组排序
const foods:Food[] = [
{
name: '西兰花',
price: 6
},
{
name: '西红柿',
price: 3
},
{
name: '榴莲',
price: 30
},
{
name: '葱花',
price: 1
}
]
foods.sort((a,b)=>{
return a.price-b.price
})

转大写(toUpperCase)

String.prototype.toUpperCase() - JavaScript | MDN

1
2
const str: string = 'hello world'
console.log(str.toUpperCase())

转小写(toLowerCase)

String.prototype.toLowerCase() - JavaScript | MDN

1
2
const str: string = 'HELLO WORLD'
console.log(str.toLowerCase())

去除两端空格(trim)

String.prototype.trim() - JavaScript | MDN

1
2
const str:string = '   123   '
console.log(str.trim()) // 123

拼接字符串数组(join)

Array.prototype.join() - JavaScript | MDN

1
2
3
4
5
6
7
8
数组.join('分隔符') // 返回拼接结果
const elements = ['Fire', 'Air', 'Water']

console.log(elements.join()) // Fire,Air,Water 默认用

console.log(elements.join('')) // FireAirWater 直接拼接

console.log(elements.join('-')) // Fire-Air-Water 用 - 拼接