ECMAScript 6——數(shù)組

1.擴展運算符之(spread)(...)

例如:

  1. console.log(...[4,5,6])
    //4 5 6
  2. console.log(1,...[4,5,6],7)
    //1 4 5 6 7
  3. const arr=[...(x>0?['a']:[]),'b'];
    //...運算符后面可以放表達式
  4. [...[],1]
    //[1] ...運算符號是空數(shù)組不產(chǎn)生任何結果。

可能會用到的地方:
函數(shù)
例:function f(z,x,c,v,b,n){}
var args=[0,1];
f(-1,...args,2,...[3])
此時...args等同于...[0,1]也就是0 1

2.es5的apply()方法被es6(spread)(...)取代,更方便谭网。

舉例
<b>1.兩者的對比之求數(shù)組最大值</b>
例:
//ES5的寫法
Math.max.apply(null,[1,2,3])
//ES6的寫法
Math.max(...[1,2,3])
//等同于
Math.max(1,2,3)

更方便的應用于:

1..用于將一個數(shù)組添加到另一個數(shù)組的尾部

//ES5的寫法
var arr1=[0,1,2];
var arr2=[3,4,5];
Array.prototype.push.apply(arr1,arr2);
//ES6的寫法
var arr1=[0,1,2];
var arr2=[3,4,5];
arr1.push(...arr2);

2.與解構賦值結合使用榜苫,用于返回一個對象但是需要不同的分組的情況

const [first,...rest]=[1,2,3,4,5];
//first對應于值1
//rest對應于值[2,3,4,5]

3.函數(shù)返回值,es5中js只能返回一個值毁欣,如果是多個值則需要返回數(shù)組或者對象,es6(...)運算符可以直接解析返回的一堆數(shù)據(jù)</b>

var dateFields = readDateFields(database);
var d = new Date(...dateFields);

4.用于將字符串轉(zhuǎn)化為真正的數(shù)組</b>

[...'hello']
// [ "h", "e", "l", "l", "o" ]

3.Array.of()

<b>Array.of()將一組值芦缰,轉(zhuǎn)化為數(shù)組</b>
Array.of(3, 11, 8) // [3,11,8]
<b>Array.of基本上可以用來替代Array()或new Array()蓄坏,并且不存在由于參數(shù)不同而導致的重載价捧。它的行為非常統(tǒng)一。</b>
<b>兩者的對比:</b>
<b>Array()</b>
Array() // []
Array(3) // [, , ,]
Array(3, 11, 8) // [3, 11, 8]
<b>Array.of</b>
Array.of() // []
Array.of(undefined) // [undefined]
Array.of(1) // [1]
Array.of(1, 2) // [1, 2]

4.數(shù)組實例的 copyWithin()

Array.prototype.copyWithin(target, start = 0, end = this.length)
它接受三個參數(shù)涡戳。

target(必需):從該位置開始替換數(shù)據(jù)结蟋。
start(可選):從該位置開始讀取數(shù)據(jù),默認為0渔彰。如果為負值嵌屎,表示倒數(shù)。
end(可選):到該位置前停止讀取數(shù)據(jù)恍涂,默認等于數(shù)組長度宝惰。如果為負值,表示倒數(shù)再沧。

<h3><b>5.數(shù)組實例的 find() 和 findIndex()</b></h3>
舉例
<b>1.</b>[1, 5, 10, 15].find(function(value, index, arr) {
return value > 9;
}) // 10
<b>2.</b>[1, 5, 10, 15].findIndex(function(value, index, arr) {
return value > 9;
}) // 2

<p>find()方法找到的是第一個目標值尼夺,第二個就不管了。findIndex()找到的是第一目標值的索引位子炒瘸,第二個就不繼續(xù)找了汞斧。當然也彌補了indexof()方法的不足</p>
[NaN].indexOf(NaN)
// -1
[NaN].findIndex(y => Object.is(NaN, y))
// 0

<h3><b>6.遍歷數(shù)組的不同方法</b></h3>
entries(),keys() 和 values()什燕。區(qū)別是keys()是對鍵名的遍歷粘勒、values()是對鍵值的遍歷,entries()是對鍵值對的遍歷屎即。
for (let index of ['a', 'b'].keys()) {
console.log(index);
}
// 0
// 1

for (let elem of ['a', 'b'].values()) {
console.log(elem);
}
// 'a'
// 'b'

for (let [index, elem] of ['a', 'b'].entries()) {
console.log(index, elem);
}
// 0 "a"
// 1 "b"

<h3><b>7.includes()庙睡,indexOf()查找是否包含某個值</b></h3>
[1, 2, 3].includes(3, 3); // false 第一個參數(shù)表示要查找的值,
[1, 2, 3].includes(3, -1); // true
[NaN].indexOf(NaN)
// -1

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末技俐,一起剝皮案震驚了整個濱河市乘陪,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌雕擂,老刑警劉巖啡邑,帶你破解...
    沈念sama閱讀 211,639評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異井赌,居然都是意外死亡谤逼,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,277評論 3 385
  • 文/潘曉璐 我一進店門仇穗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來流部,“玉大人,你說我怎么就攤上這事纹坐≈剑” “怎么了?”我有些...
    開封第一講書人閱讀 157,221評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長果漾。 經(jīng)常有香客問我球切,道長,這世上最難降的妖魔是什么绒障? 我笑而不...
    開封第一講書人閱讀 56,474評論 1 283
  • 正文 為了忘掉前任吨凑,我火速辦了婚禮,結果婚禮上端盆,老公的妹妹穿的比我還像新娘怀骤。我一直安慰自己,他們只是感情好焕妙,可當我...
    茶點故事閱讀 65,570評論 6 386
  • 文/花漫 我一把揭開白布蒋伦。 她就那樣靜靜地躺著,像睡著了一般焚鹊。 火紅的嫁衣襯著肌膚如雪痕届。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,816評論 1 290
  • 那天末患,我揣著相機與錄音研叫,去河邊找鬼。 笑死璧针,一個胖子當著我的面吹牛嚷炉,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播探橱,決...
    沈念sama閱讀 38,957評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼申屹,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了隧膏?” 一聲冷哼從身側(cè)響起哗讥,我...
    開封第一講書人閱讀 37,718評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎胞枕,沒想到半個月后杆煞,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,176評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡腐泻,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,511評論 2 327
  • 正文 我和宋清朗相戀三年决乎,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片贫悄。...
    茶點故事閱讀 38,646評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡瑞驱,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出窄坦,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 34,322評論 4 330
  • 正文 年R本政府宣布鸭津,位于F島的核電站彤侍,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏逆趋。R本人自食惡果不足惜盏阶,卻給世界環(huán)境...
    茶點故事閱讀 39,934評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望闻书。 院中可真熱鬧名斟,春花似錦、人聲如沸魄眉。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,755評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽坑律。三九已至岩梳,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間晃择,已是汗流浹背冀值。 一陣腳步聲響...
    開封第一講書人閱讀 31,987評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留宫屠,地道東北人列疗。 一個月前我還...
    沈念sama閱讀 46,358評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像浪蹂,于是被迫代替她去往敵國和親抵栈。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,514評論 2 348

推薦閱讀更多精彩內(nèi)容