成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

七個我在工作中經(jīng)常使用的 JavaScript 技巧

開發(fā) 前端
ES6 給我們編程帶來了很多便利,以前用大量代碼實現(xiàn)的功能現(xiàn)在變得非常簡潔。本文總結(jié)了我在工作中經(jīng)常使用的 7 個 JavaScript 技巧,希望對你也有幫助。

前言

ES6 給我們編程帶來了很多便利,以前用大量代碼實現(xiàn)的功能現(xiàn)在變得非常簡潔。

本文總結(jié)了我在工作中經(jīng)常使用的 7 個 JavaScript 技巧,希望對你也有幫助。

1. 找出數(shù)組中的最大值或最小值

有時,我們需要找到數(shù)組中的最大值,你通常是怎么做的?

解決方案 1?

我們可以先對數(shù)組進(jìn)行排序,然后,數(shù)組的最后一項就是最大值。

const array = [ 1, 10, -19, 2, 7, 100 ]
array.sort((a, b) => a - b)
console.log('max value', array[ array.length - 1 ])
console.log('min value', array[ 0 ])

解決方案 2?

還有其他解決方案嗎?是的,我們可以使用“Math.max”輕松處理它。

const array = [ 1, 10, -19, 2, 7, 100 ]
console.log('max value', Math.max(...array))
console.log('min value', Math.min(...array))

2.計算數(shù)組的總和

如果有一個數(shù)字?jǐn)?shù)組,得到它們總和的最快方法是什么?

const array = [ 1, 10, -19, 2, 7, 100 ]
const sum = array.reduce((sum, num) => sum + num)

3. 從數(shù)組中獲取隨機(jī)值

給你一個數(shù)組,現(xiàn)在你想從中獲取一個隨機(jī)值,你怎么做呢?

const array = [ 'fatfish', 'fish', 24, 'hello', 'world' ]
const getRandomValue = (array) => {
return array[ Math.floor(Math.random() * array.length) ]
}
console.log(getRandomValue())
console.log(getRandomValue())
console.log(getRandomValue())

4.隨機(jī)打亂數(shù)組的值

我們在抽獎的時候,需要打亂抽獎順序。

const prizes = [ '??', '??', '??', '??' ]
prizes.sort(() => 0.5 - Math.random())
console.log(prizes)
prizes.sort(() => 0.5 - Math.random())
console.log(prizes)

5. 展平多層陣列

現(xiàn)在我們有了一個多維嵌套數(shù)組,如何將其鋪成一維數(shù)組?

解決方案 1

const array = [ 1, [ 2, [ 3, [ 4, [ 5 ] ] ] ] ]
const flattenArray = (array) => {
return array.reduce((res, it) => {
return res.concat(Array.isArray(it) ? flattenArray(it) : it)
}, [])
}
console.log(flattenArray(array))

解決方案 2

事實上,我們有一個更簡單的方法來解決它。關(guān)于flat,我們來看看MDN的解釋:

flat() 方法創(chuàng)建一個新數(shù)組,其中所有子數(shù)組元素遞歸連接到指定深度。

const array = [ 1, [ 2, [ 3, [ 4, [ 5 ] ] ] ] ]
console.log(array.flat(Infinity))

6.檢查數(shù)組是否包含值

過去,我們總是使用“indexOf”方法來檢查數(shù)組是否包含值。如果“indexOf”返回的值大于-1,則表示有一個。

const array = [ 'fatfish', 'hello', 'world', 24 ]
console.log(array.indexOf('fatfish'))
console.log(array.indexOf('medium'))

但是,現(xiàn)在數(shù)據(jù)比較復(fù)雜,我們將無法通過 indexOf 方法直接確認(rèn)數(shù)組中是否存在“fatfish”。幸運的是,ES6 中提供了 findIndex 方法。

const array = [
{
name: 'fatfish'
},
{
name: 'hello'
},
{
name: 'world'
},
]
const index = array.findIndex((it) => it.name === 'fatfish') // 0

7.使用“includes”方法進(jìn)行判斷

你一定見過這樣的判斷方法,雖然,可以達(dá)到條件判斷的目的,但是,看起來很繁瑣。

const value = 'fatfish'
if (value === 'fatfish' || value === 'medium' || value === 'fe') {
console.log('hello world')
}

我們可以使用includes方法讓代碼更簡單甚至更可擴(kuò)展。

const conditions = [ 'fatfish', 'medium', 'fe' ]
const value = 'fatfish'
if (conditions.includes(value)) {
console.log('hello world')
}

最后

以上就是我今天跟你分享的7個我在工作中經(jīng)常使用的ES6技巧,希望這些技巧也能夠幫助到你

責(zé)任編輯:華軒 來源: web前端開發(fā)
相關(guān)推薦

2022-09-30 09:26:35

JavaScript技巧

2020-12-07 09:56:34

GitLinux版本控制系統(tǒng)

2023-09-07 16:28:46

JavaScrip

2021-11-22 12:13:54

Linuxwget 命令

2021-06-28 11:46:31

GitLinux

2015-11-30 17:12:31

Git使用技巧

2023-03-19 16:02:33

JavaScrip技巧編程語言

2022-09-20 12:59:36

JavaScript函數(shù)

2019-12-11 15:21:12

PythonExcel瀏覽器

2019-03-06 14:26:31

Javascript面試前端

2023-05-30 09:59:38

2018-05-24 08:47:15

數(shù)據(jù)存儲技巧

2021-08-17 10:08:44

HTML網(wǎng)站網(wǎng)絡(luò)

2022-04-14 10:40:11

領(lǐng)導(dǎo)者IT團(tuán)隊遠(yuǎn)程團(tuán)隊

2024-06-25 15:41:41

2011-03-02 09:34:58

AppFuse

2023-01-10 14:54:19

2021-11-03 06:57:41

Vue源碼應(yīng)用

2024-11-27 08:28:37

2019-08-07 16:50:38

SQLjoingroup
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 韩日有码 | www.国产精 | 草久久久| 国产精产国品一二三产区视频 | 久久精品国产久精国产 | 精品国产一区二区三区久久 | 欧美亚洲在线 | 亚洲性人人天天夜夜摸 | 亚洲男人天堂网 | 一区二区精品 | 国产99久久久国产精品下药 | 国产精品久久久亚洲 | 天天综合日日夜夜 | 国产在线精品一区二区三区 | 日本久久福利 | 亚洲天天干| 一区二区三区国产精品 | 久久久一区二区三区四区 | 亚洲视频 欧美视频 | 国产精品资源在线观看 | 日韩成人一区 | 欧美亚洲日本 | 免费看爱爱视频 | 国产福利在线看 | 亚洲天天 | 午夜视频一区 | 麻豆视频国产在线观看 | 一级毛片视频 | 国产精品一二三区 | 久久九九99 | 国产精品777一区二区 | 精品一区二区三区四区五区 | 亚洲精品国产电影 | 日韩免费在线视频 | 亚洲一区二区三区免费视频 | 在线男人天堂 | 男人的天堂avav | 免费久 | 精品中文字幕在线观看 | 国产一区二区三区视频在线观看 | 二区高清 |