亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專(zhuān)欄INFORMATION COLUMN

【JS】JavaScript數(shù)組以及數(shù)組API學(xué)習(xí)總結(jié)

roundstones / 1372人閱讀

摘要:返回?cái)?shù)組內(nèi)容的字符串表示形式將數(shù)組中每個(gè)元素轉(zhuǎn)為字符串,并用逗號(hào)連接。拍照連接符將數(shù)組中每個(gè)元素轉(zhuǎn)為字符串,用自定義的連接符連接每個(gè)元素需要用變量借助。

關(guān)于數(shù)組篇的記錄,純自己總結(jié),會(huì)持續(xù)更新~

原生js方法
1:創(chuàng)建數(shù)組的幾種方法:
var arr = []; 

var arr = new Array();

var arr = [1,2];

var arr = new Array(1,2,3);

var arr = new Array(n); 

**注意:new Array定義數(shù)組,會(huì)根據(jù)參數(shù)個(gè)數(shù)不同代表數(shù)組不同內(nèi)容
js中數(shù)組越界不報(bào)錯(cuò)!而是返回undefined**

2:檢測(cè)是不是數(shù)組:
Array.isArray(arr) // 數(shù)組的API

arr instanceof Array      //通過(guò)構(gòu)造函數(shù)

Array.prototype.isPrototypeOf(arr)    //通過(guò)原型

Object.prototype.toString.call(arr)  //[Object Array]
3:遍歷關(guān)聯(lián)數(shù)組(哈希hash數(shù)組)
for(var key in arr){
    arr[key] 當(dāng)前屬性值
}
4:數(shù)組基礎(chǔ)API
arr.valueOf() // 返回值為該對(duì)象的原始值。

arr.toString() // 返回?cái)?shù)組內(nèi)容的字符串表示形式

String(arr) // 將數(shù)組中每個(gè)元素轉(zhuǎn)為字符串,并用逗號(hào)連接?!恼?
arr.join("連接符") //  將數(shù)組中每個(gè)元素轉(zhuǎn)為字符串,用自定義的"連接符"連接每個(gè)元素,需要用變量借助。

arr.reverse() // 將數(shù)組中元素的位置顛倒,并返回該數(shù)組,注意:原數(shù)組會(huì)改變

arr.sort() // 數(shù)組排序,按字符串大小排序,會(huì)改變?cè)瓟?shù)組

arr.concat(otherArr) // 合并新元素,返回一個(gè)新數(shù)組需要用變量接住,不會(huì)改變?cè)瓟?shù)組

arr.slice(start,end) // 剪切數(shù)組,含頭不含尾 ,返回新的數(shù)組,不會(huì)改變?cè)瓟?shù)組

注意:拼接和截取: 都無(wú)法直接修改原數(shù)組而是返回新數(shù)組,用變量接住
arr.split([ 起始位置 | 要?jiǎng)h除元素的個(gè)數(shù) | 要插入元素的值,可以寫(xiě)入多個(gè)值 ] )剪切數(shù)組/替    換/新增

arr.indexOf(item) // 返回第一個(gè)匹配到的元素在數(shù)組中所在的位置 or -1

arr.lastIndexOf(item)
注意:IE6, 7, 8 不支持indexOf與lastIndexOf方法 
5:棧和隊(duì)列相關(guān)API
arr.push() //  尾部添加元素,返回被新數(shù)組的長(zhǎng)度,原數(shù)組會(huì)改變

arr.pop()  // 尾部刪除元素,返回被刪除的元素,原數(shù)組會(huì)改變

arr.unshift(item)  // 頭部添加元素,返回新數(shù)組的長(zhǎng)度,原數(shù)組會(huì)改變

arr.shift(item) //  頭部刪除元素,返回被刪除的元素,原數(shù)組會(huì)改變
6:ES5 API:

注意:ES5數(shù)組API這些都不會(huì)改變?cè)瓟?shù)組,新的數(shù)組要用變量接住

參數(shù):[ 調(diào)用every的數(shù)組的每一項(xiàng)元素 | 對(duì)應(yīng)元素所在的位置 | 表示該數(shù)組 ]

arr.every(function(item,index,array){}) // 該函數(shù)對(duì)每一項(xiàng)都返回true,則返回true,否則返回false

arr.some(function(item,index,array){})  // 該函數(shù)對(duì)其中一項(xiàng)返回true,則返回true

arr.filter(callback) // 數(shù)組過(guò)濾,返回滿(mǎn)足條件的元素組成的一個(gè)新數(shù)組,

arr.map(callback) // 對(duì)數(shù)組每一項(xiàng)進(jìn)行計(jì)算等處理,返回處理結(jié)果組成的數(shù)組,返回的是一個(gè)新數(shù)組

arr.reduce(fn) // ?前一個(gè)元素 | 當(dāng)前元素,從1開(kāi)始 | 后一個(gè)元素的序列,從1開(kāi)始計(jì)數(shù) | 表示該數(shù)組 ] _

var arr = [1,2,3,4,5];
var reduceArr = arr.reduce(function(pre,cur,index,array){
    return prev + cur;
})   //15
7:ES6 API
...[arr] 數(shù)組擴(kuò)展運(yùn)算符

Math.min(...[arr]) 等同于Math.min.apply(null,arr)  替換數(shù)組的apply方法

arr1.push(...arr2) 等同于A(yíng)rray.prototype.push.apply(arr1,arr2) 一個(gè)數(shù)組添加到另一個(gè)數(shù)組的尾部

[...arr1,...arr2,...arr3] 等同于arr1.concat(arr2,arr3)  合并數(shù)組

let[first,...const]=[1,2,3,4],結(jié)果first=1,const=[2,3,4] 結(jié)合解構(gòu)一起使用

Array.from() 將類(lèi)數(shù)組對(duì)象和可遍歷的對(duì)象轉(zhuǎn)換為真正的數(shù)組(包括ES6新增的數(shù)據(jù)結(jié)構(gòu)Set和Map)

Array.from(“hello”)  [“h”,”e”,”l”,”l”,”o”]
let person={
    0:"張三",
    1:"李四",
    2:"王五",
    length:3 //必須要設(shè)置對(duì)象長(zhǎng)度
};
let arr=Array.from(person); //等同于let arr=[].slice.call(person);

Array.of(1,2,3) [1,3,4] 將一組值轉(zhuǎn)換為數(shù)組

Array()會(huì)因參數(shù)個(gè)數(shù)導(dǎo)致行為有差異

Array.find(function(val,index,arr))
找到第一個(gè)符合條件的數(shù)組成員Array.findIndex(function(val,index,arr)) 找到第一個(gè)符合條件的數(shù)組位置
這兩個(gè)方法都可以發(fā)現(xiàn)NaN,彌補(bǔ)了數(shù)組的IndexOf方法的不足。

 arr.includes(value,[start]) 可以找到NaN

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/90460.html

相關(guān)文章

  • JS程序

    摘要:設(shè)計(jì)模式是以面向?qū)ο缶幊虨榛A(chǔ)的,的面向?qū)ο缶幊毯蛡鹘y(tǒng)的的面向?qū)ο缶幊逃行┎顒e,這讓我一開(kāi)始接觸的時(shí)候感到十分痛苦,但是這只能靠自己慢慢積累慢慢思考。想繼續(xù)了解設(shè)計(jì)模式必須要先搞懂面向?qū)ο缶幊?,否則只會(huì)讓你自己更痛苦。 JavaScript 中的構(gòu)造函數(shù) 學(xué)習(xí)總結(jié)。知識(shí)只有分享才有存在的意義。 是時(shí)候替換你的 for 循環(huán)大法了~ 《小分享》JavaScript中數(shù)組的那些迭代方法~ ...

    melody_lql 評(píng)論0 收藏0
  • JavasScript重難點(diǎn)知識(shí)

    摘要:忍者級(jí)別的函數(shù)操作對(duì)于什么是匿名函數(shù),這里就不做過(guò)多介紹了。我們需要知道的是,對(duì)于而言,匿名函數(shù)是一個(gè)很重要且具有邏輯性的特性。通常,匿名函數(shù)的使用情況是創(chuàng)建一個(gè)供以后使用的函數(shù)。 JS 中的遞歸 遞歸, 遞歸基礎(chǔ), 斐波那契數(shù)列, 使用遞歸方式深拷貝, 自定義事件添加 這一次,徹底弄懂 JavaScript 執(zhí)行機(jī)制 本文的目的就是要保證你徹底弄懂javascript的執(zhí)行機(jī)制,如果...

    forsigner 評(píng)論0 收藏0
  • 前端開(kāi)發(fā)周報(bào): CSS 布局方式與JavaScript數(shù)據(jù)結(jié)構(gòu)和算法

    摘要:如果沒(méi)有學(xué)習(xí)過(guò)計(jì)算機(jī)科學(xué)的程序員,當(dāng)我們?cè)谔幚硪恍﹩?wèn)題時(shí),比較熟悉的數(shù)據(jù)結(jié)構(gòu)就是數(shù)組,數(shù)組無(wú)疑是一個(gè)很好的選擇。 showImg(https://segmentfault.com/img/bVTSjt?w=400&h=300); 1、常見(jiàn) CSS 布局方式詳見(jiàn): 一些常見(jiàn)的 CSS 布局方式梳理,涉及 Flex 布局、Grid 布局、圣杯布局、雙飛翼布局等。http://cherryb...

    huhud 評(píng)論0 收藏0
  • 前端開(kāi)發(fā)周報(bào): CSS 布局方式與JavaScript數(shù)據(jù)結(jié)構(gòu)和算法

    摘要:如果沒(méi)有學(xué)習(xí)過(guò)計(jì)算機(jī)科學(xué)的程序員,當(dāng)我們?cè)谔幚硪恍﹩?wèn)題時(shí),比較熟悉的數(shù)據(jù)結(jié)構(gòu)就是數(shù)組,數(shù)組無(wú)疑是一個(gè)很好的選擇。 showImg(https://segmentfault.com/img/bVTSjt?w=400&h=300); 1、常見(jiàn) CSS 布局方式詳見(jiàn): 一些常見(jiàn)的 CSS 布局方式梳理,涉及 Flex 布局、Grid 布局、圣杯布局、雙飛翼布局等。http://cherryb...

    ?xiaoxiao, 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<