省時省力的ES6

2021-10-14 16:27:39 字數 2635 閱讀 5148

這次就收集一些es6中的hack吧!講真的(會不會是…)…掌握這些技巧。能讓我們少寫很多行**哦

let a = 'world', b = 'hello'

[a, b] = [b, a]

console.log(a) // -> hello

console.log(b) // -> world

// 雙擊666

使用async/await,函式會把返回值放在乙個陣列中。使用陣列解構後就可以把返回值直接賦給相應的變數。

const [user, account] = await promise.all([

fetch('/user'),

fetch('/account')

])

let a = 'hello',

b = 'world';

let _string = `$ $`

console.log(_string); // "hello world"

const notify = (msg,  = {}) => 

notify('hi!'); // hi! info undefined true

notify('hi!', ); // hi! error undefined true

notify('hi!', ); // hi! warn undefined false

**不多一行搞定

// 最大值

const max = (arr) => math.max(...arr);

max([1, 2, 3]) // outputs: 321

// 求和

const sum = (arr) => arr.reduce((a, b) => (a + b), 0)

sum([1, 2, 3, 4]) // output: 10

// 拷貝

let array1 = [1, "3", , 666];

let copyarray = [ ...array1 ];

console.log(copyarray) // [1, "3", , 666]

// 陣列連線

const one = ['a', 'b', 'c']

const two = ['d', 'e', 'f']

const three = ['g', 'h', 'i']

// old way #1

const result = one.concat(two, three)

// old way #2

const result = .concat(one, two, three)

// new

const result = [...one, ...two, ...three]

通過 set 可以輕易的實現陣列去重

function dedupe(array) 

let nodupes = dedupe([1, 2, "a", "a", , 7, 3, 1], );

console.log(nodupes); // [1, 2, "a", , 7, 3]

通過陣列建立set會刪除陣列中的重複項,而spread運算子會將set轉換為array

const throwifmissing = () => 

const func = (requiredparam = throwifmissing()) =>

let  = ;

console.log(others) //

let name = "mael";

let me = `]: name,

age: 24

};

let a = ['a', 'b', 'c', 'd' ];

// es6

for ( var val of a ) // "a" "b" "c" "d"

// es5

for ( var idx in a ) // 0 1 2 3

抽象基類是一種專門用於繼承的類。它不能直接構建。主要用例是繼承的類具有公共介面。但是,class尚未利用abstract關鍵字來建立抽象基類,我們可以使用new.target來模擬。

class note 

}}class colornote extends note

let note = new note(); // error!

let colornote = new colornote(); // ok

我們可以使用generators來建立乙個惰性函式

function* range(start, count) 

}for (let teenageyear of range(13, 7)) !`);

}

省時省力的jquery驗證框架

前段的表單驗證,重複性高,雖然網上一大堆js 每當郵件,號碼什麼的驗證,直接copy,但是有了這個框架真實美包包。jquery validate 驗證框架,本來想詳細寫寫用法,發現罈子裡paskaa幾年前寫過,不知道為何帖子沉了。詳細使用 官方文件參考 官方那個,我感覺這個文件寫的不是很詳細,讀了幾...

省時省力 Shell小技巧一則

經常與 shell 為伍的你是不是也會經常碰到下面這些情境 1 mv somewhere file your folder 2 vi your folder file要儲存某些檔案到特定目錄,然後開始檢視 編輯 1 cp somewhere foo.c somewhere foo.c.orig 2 ...

指令碼篇 批量新增檔案字首,省時省力

如下圖,修改前的資料夾。開啟電腦的命令執行符 win鍵 r,然後輸入cmd 輸入 python 批量修改檔案字首指令碼.py 然後回車,輸入需要新增的字首在回車即可。如下圖。如下 匯入python內建的os模組和sys模組 import os import sys 程式入口 if name main...