溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

javascript中常用的ES6方法有哪些

發(fā)布時間:2021-04-20 10:08:00 來源:億速云 閱讀:284 作者:小新 欄目:web開發(fā)

這篇文章主要介紹javascript中常用的ES6方法有哪些,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

JavaScript可以做什么

1.可以使網(wǎng)頁具有交互性,例如響應用戶點擊,給用戶提供更好的體驗。 2.可以處理表單,檢驗用戶的輸入,并提供及時反饋節(jié)省用戶時間。 3.可以根據(jù)用戶的操作,動態(tài)的創(chuàng)建頁面。 4使用JavaScript可以通過設(shè)置cookie存儲在瀏覽器上的一些臨時信息。

毫無疑問,JavaScript 是Web開發(fā)中最流行的編程語言之一。 無論使用的是 React,Vue 還是Angular,都只是 JavaScript。 JS圍繞著廣闊而至關(guān)重要的生態(tài)系統(tǒng)發(fā)展,提供了無數(shù)的框架和庫,可幫助我們更快地開發(fā)應用程序。

但是有時候最好退一步,嘗試了解如何在沒有使用庫的情況下做事。 看看下面的代碼片段,它們以優(yōu)雅的方式解決了簡單的問題,在日常項目也很實用,所以記好筆記,當遇到問題時就可直接來用使用。

1.字符串反轉(zhuǎn)


在此示例中,我們使用展開運算符,Array的reverse方法和 String 的join方法來反轉(zhuǎn)給定的字符串。

const reverseString = string => [...string].reverse().join('')

// 事例
reverseString('Medium') // "muideM"
reverseString('Better Programming') // "gnimmargorP retteB"

2.計算指定數(shù)字的階乘


const factorialOfNumber = number => 
  number < 0
    ? (() => {
      throw new TypeError('請輸入正整數(shù)')
    })()
    : number <= 1
      ? 1
      : number * factorialOfNumber(number - 1)
      
      
// 事例
factorialOfNumber(4) // 24
factorialOfNumber(8) // 40320

3.將數(shù)字轉(zhuǎn)換為數(shù)字數(shù)組


const converToArray = number => [...`${number}`].map(el => parseInt(el))

// 事例
converToArray(5678) // [5, 6, 7, 8]
converToArray(12345678) // [1, 2, 3, 4, 5, 6, 7, 8]

4.檢查數(shù)字是否為2的冪


const isNumberPowerOfTwo = number => !!number && (number & (number - 1)) == 0

// 事例
isNumberPowerOfTwo(100) // false
isNumberPowerOfTwo(128) // true

5.從對象創(chuàng)建鍵-值對數(shù)組


const keyValuePairsToArray = object => Object.keys(object)
  .map(el => [el, object[el]])

// 事例
keyValuePairsToArray({Better: 4, Programming: 2})
// [['Better', 4], ['Programming', 2]]

keyValuePairsToArray({x:1, y:2, z:3})
// [['x', 1], ['y', 2], ['z', 3]]

6.返回數(shù)字數(shù)組中的最大值


const maxElementsFromArray = (array, number = 1) => [...array].sort((x, y) => y -x).slice(0, number)

// 事例
maxElementsFromArray([1, 2, 3, 4, 5]) // [5]

maxElementsFromArray([7, 8, 9, 10, 10], 2) // [10, 10]

7. 檢查數(shù)組中的所有元素是否相等


const elementsAreEqual = array => array.every(el => el === array[0])

// 事例
elementsAreEqual([9, 8, 7, 6, 5, 4]) // false
elementsAreEqual([4, 4, 4, 4, 4]) // true

8. 返回數(shù)的平均值


const averageOfTwoNumbers = (...numbers) => numbers.reduce((accumulator, currentValue) => accumulator + currentValue, 0) / numbers.length

// 事例
averageOfTwoNumbers(...[6, 7, 8]) // 7
averageOfTwoNumbers(...[6, 7, 8, 9]) // 7.5

9.返回兩個或多個數(shù)字的和


const sumOfNumbers = (...array) => [...array].reduce((accumulator, currentValue) => accumulator + currentValue, 0)

// 事例
sumOfNumbers(5, 6, 7, 8, 9, 10) // 45
sumOfNumbers(...[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) // 50

10.返回數(shù)字數(shù)組的冪集


所謂冪集(Power Set), 就是原集合中所有的子集(包括全集和空集)構(gòu)成的集族??蓴?shù)集是最小的無限集; 它的冪集和實數(shù)集一一對應(也稱同勢),是不可數(shù)集。 不是所有不可數(shù)集都和實數(shù)集等勢,集合的勢可以無限的大。如實數(shù)集的冪集也是不可數(shù)集,但它的勢比實數(shù)集大。 設(shè)X是一個有限集,|X| = k,則X的冪集的勢為2的k次方。

const powersetOfArray = array => array.reduce((accumulator, currentValue) => accumulator.concat(accumulator.map(el => [currentValue].concat(el))), [[]])

// 事例
powersetOfArray([4, 2]) // [[], [4], [2], [2, 4]]
powersetOfArray([1, 2, 3])
// [[], [1], [2], [2,1], [3], [3,1], [3,2], [3,2,1]]

以上是“javascript中常用的ES6方法有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI