溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

ES6/JavaScript使用技巧有哪些

發(fā)布時(shí)間:2021-04-25 14:03:05 來源:億速云 閱讀:91 作者:小新 欄目:web開發(fā)

這篇文章主要介紹了ES6/JavaScript使用技巧有哪些,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

JavaScript可以做什么

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

一些小技巧

1.new Set()

數(shù)組的去重,在'潛意識(shí)'里面感覺就應(yīng)該去循環(huán)然后對(duì)比去重,其實(shí)在ES6中新增提供了新的數(shù)據(jù)結(jié)構(gòu)Set,用他可以輕松去重?cái)?shù)組,比如:

let arr = [1,1, 2, 2, 3, 3];
let set = new Set(arr); //
let newArr = Array.from(set); // Array.from方法可以將 Set 結(jié)構(gòu)轉(zhuǎn)為數(shù)組。 
console.log(newArr); // [1, 2, 3]

2.Object.assign()

也是ES6中提供的對(duì)象的擴(kuò)展方法,其可以用于對(duì)象的合并拷貝,像之前對(duì)象合并也是很繁瑣,但是現(xiàn)在很easy麼,比如:

let obj1 = {a: 1};
let obj2 = {b: 2};
let obj3 = Object.assign({}, obj1, obj2);
console.log(obj3); // {a: 1, b: 2}

3.map()

map方法用于遍歷數(shù)組,有返回值,可以對(duì)數(shù)組的每一項(xiàng)進(jìn)行操作并生成一個(gè)新的數(shù)組,有些時(shí)候可以代替for和forEach循環(huán),簡(jiǎn)化代碼,比如:

let arr3 = [1, 2, 3, 4, 5];
let newArr3 = arr3.map((e, i) => e * 10); // 給數(shù)組每一項(xiàng)乘以10
console.log(newArr3); // [10, 20, 30, 40, 50]

4.filter()

filter方法同樣用于遍歷數(shù)組,顧名思義,就是過濾數(shù)組,在每一項(xiàng)元素后面觸發(fā)一個(gè)回調(diào)函數(shù),通過判斷,保留或移除當(dāng)前項(xiàng),最后返回一個(gè)新的數(shù)組,比如:

let arr4 = [1, 2, 3, 4, 5];
let newArr4 = arr4.filter((e, i) => e % 2 === 0); // 取模,過濾余數(shù)不為0的數(shù)
console.log(newArr4); // [2,4]

5.some()

some方法用于遍歷數(shù)組,在每一項(xiàng)元素后面觸發(fā)一個(gè)回調(diào)函數(shù),只要一個(gè)滿足條件就返回true,否則返回false,類似于 || 比較,比如:

let arr5 = [{result: true}, {result: false}];
let newArr5 = arr5.some((e, i) => e.result); // 只要一個(gè)為true,即為true
console.log(newArr5); // true

6.every() //與5相反的

every方法用于遍歷數(shù)組,在每一項(xiàng)元素后面觸發(fā)一個(gè)回調(diào)函數(shù),只要一個(gè)不滿足條件就返回false,否則返回true,類似于 &&比較,比如:

let arr6 = [{result: true}, {result: false}];
let newArr6 = arr6.every((e, i) => e.result); // 只要一個(gè)為false,即為false
console.log(newArr6); // false

7.三元運(yùn)算符

該運(yùn)算符應(yīng)該大家都比較熟悉,在默寫情況下可以簡(jiǎn)化if else的寫法,比如:

let e = true,
f = '';
if (e) {
f = 'aaa';
} else {
f = 'bbb';
}
// 等同于
f = e ? 'aaa' : 'bbb';

8.~~運(yùn)算符

~符號(hào)用在JavaScript中有按位取反的作用,~~即是取反兩次,而位運(yùn)算的操作值要求是整數(shù),其結(jié)果也是整數(shù),所以經(jīng)過位運(yùn)算的都會(huì)自動(dòng)變成整數(shù),可以巧妙的去掉小數(shù)部分,類似于parseInt,比如:

let a = 1.23;
let b = -1.23;
console.log(~~a); // 1
console.log(~~b); // -1

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“ES6/JavaScript使用技巧有哪些”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!

向AI問一下細(xì)節(jié)

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

AI