中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

JavaScript擴展運算符用法實例小結(jié)【基于ES6】

本文實例講述了JavaScript 擴展運算符用法。分享給大家供大家參考,具體如下:

創(chuàng)新互聯(lián)公司主營虞城網(wǎng)站建設的網(wǎng)絡公司,主營網(wǎng)站建設方案,重慶APP開發(fā)公司,虞城h5小程序開發(fā)搭建,虞城網(wǎng)站營銷推廣歡迎虞城等地區(qū)企業(yè)咨詢

擴展運算符格式

擴展運算符格式很簡單,就是三個點(…)

重點:需要ES6 語法支持

擴展運算符作用???

擴展運算符允許一個表達式在期望多個參數(shù)(用于函數(shù)調(diào)用)或多個元素(用于數(shù)組字面量)或多個變量(用于解構(gòu)賦值)的位置擴展。

1、將一個數(shù)組放入另一個數(shù)組中

下面開始通過四個例子來深刻理解擴展運算符

①. 創(chuàng)建一個數(shù)組middle
②. 創(chuàng)建第二個包含middle的數(shù)組
③. 輸出結(jié)果

var middle = [3, 4];
var arr = [1, 2, middle, 5, 6];
console.log(arr);
// [1, 2, [3, 4], 5, 6]

在上例中,沒有使用擴展運算符。middle作為數(shù)組放入另一個數(shù)組中

2、如果想讓輸出結(jié)果只有一個數(shù)組???

這時候就用到擴展運算符,看下面例子,除了使用擴展運算符其他都與上面例子相同。

var middle = [3, 4];
var arr = [1, 2, ...middle, 5, 6];
console.log(arr);
// [1, 2, 3, 4, 5, 6]

當創(chuàng)建數(shù)組arr和使用在middle數(shù)組上使用擴展運算符時,不是將middle數(shù)組直接插入到arr中,而是將middle數(shù)組擴展,然后將元素插入到arr中。

3、復制數(shù)組

slice()是JavaScript數(shù)組的方法,作用是復制數(shù)組。我們同樣可以使用擴展運算符復制數(shù)組。

var arr = ['a', 'b', 'c'];
var arr2 = [...arr];
console.log(arr2);
// ['a', 'b', 'c']

arr數(shù)組中的元素擴展成為單獨元素被分配到arr2中?,F(xiàn)在可以隨意改變arr2數(shù)組,且都不會對源數(shù)組arr產(chǎn)生影響

這是因為,arr數(shù)組值被擴展后添加到arr2數(shù)組中,我們設置arr2等于arr的值,而不是其本身。我們可以關(guān)注沒有擴展運算符時發(fā)生事情,就能理解了。

如果創(chuàng)建數(shù)組然后設置另一個數(shù)組等于其本身,如下:

var arr = ['a', 'b', 'c'];
var arr2 = arr;
console.log(arr2);
// ['a', 'b', 'c']

現(xiàn)在我們將arr2數(shù)組賦值給arr數(shù)組,這意味著只要改變arr2,arr數(shù)組就會發(fā)生變化。

arr2.push('d');
console.log(arr2);
// ['a', 'b', 'c', 'd']
console.log(arr);
// ['a', 'b', 'c', 'd']

4、拼接數(shù)組

使用擴展運算符可以代替concat()來拼接數(shù)組。

var arr = ['a', 'b', 'c'];
var arr2 = ['d', 'e', 'f'];
arr1 = arr.concat(arr2);
console.log(arr);
// ['a', 'b', 'c', 'd', 'e', 'f']

使用擴展運算符

var arr = ['a', 'b', 'c'];
var arr2 = ['d', 'e', 'f'];
arr = [...arr, ...arr2];
console.log(arr);
// ['a', 'b', 'c', 'd', 'e', 'f']

5、Math

也可以使用math函數(shù)連同擴展運算符。如這個例子中,將使用Math.max()

Math.max()將返回一組數(shù)最大值。
Math.max();
// -Infinity
Math.max(1, 2, 3);
// 3
Math.max(100, 3, 4);
// 100

在沒有擴展運算符,在數(shù)組上使用Math.max()最容易方法就是使用.apply()

var arr = [2, 4, 8, 6, 0];
function max(arr) {
 return Math.max.apply(null, arr);
}
console.log(max(arr));
// 8

現(xiàn)在看看使用擴展運算符做同樣事情。只需要兩行代碼就可以做到同樣效果。

var arr = [2, 4, 8, 6, 0];
var max = Math.max(...arr);
console.log(max);
// 8

6、字符串轉(zhuǎn)數(shù)組

使用擴展運算符將字符串轉(zhuǎn)換為數(shù)組。

var str = "hello";
var chars = [...str];
console.log(chars);
// ['h', 'e',' l',' l', 'o']

感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運行效果。

更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript數(shù)組操作技巧總結(jié)》、《JavaScript排序算法總結(jié)》、《JavaScript數(shù)學運算用法總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》及《JavaScript錯誤與調(diào)試技巧總結(jié)》

希望本文所述對大家JavaScript程序設計有所幫助。

當前標題:JavaScript擴展運算符用法實例小結(jié)【基于ES6】
分享地址:http://m.rwnh.cn/article46/pcddeg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供建站公司、網(wǎng)站建設定制開發(fā)、網(wǎng)站維護全網(wǎng)營銷推廣、自適應網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化
岚皋县| 义马市| 雅江县| 平和县| 营山县| 清水河县| 延边| 龙井市| 象州县| 砀山县| 阿拉善左旗| 新余市| 株洲县| 和田市| 广丰县| 天水市| 芮城县| 安化县| 苍梧县| 苍山县| 思茅市| 左云县| 新化县| 桂阳县| 义乌市| 武汉市| 开化县| 连山| 邵武市| 保定市| 宿迁市| 贵港市| 杭锦旗| 仁化县| 平果县| 天等县| 增城市| 会宁县| 云安县| 灌阳县| 兴化市|