摘要:把數(shù)組的所有元素放入一個(gè)字符串。刪除并返回?cái)?shù)組的第一個(gè)元素從某個(gè)已有的數(shù)組返回選定的元素對(duì)數(shù)組的元素進(jìn)行排序刪除元素,并向數(shù)組添加新元素。返回該對(duì)象的源代碼。把數(shù)組轉(zhuǎn)換為本地?cái)?shù)組,并返回結(jié)果。
首先由一個(gè)朋友提的問(wèn)題開(kāi)始
</>復(fù)制代碼
var a = [].push(233)
console.log(a)
結(jié)果是 1;一開(kāi)始我也搞錯(cuò)了,以為返回的是新數(shù)組,然后去查了下資料,才沒(méi)發(fā)現(xiàn)返回的是新數(shù)組的長(zhǎng)度,也許這就是feature吧
那就來(lái)復(fù)習(xí)下數(shù)組的方法和細(xì)節(jié)吧
</>復(fù)制代碼
Array 對(duì)象方法
方法 描述
concat() 連接兩個(gè)或更多的數(shù)組,并返回結(jié)果。
join() 把數(shù)組的所有元素放入一個(gè)字符串。元素通過(guò)指定的分隔符進(jìn)行分隔。
pop() 刪除并返回?cái)?shù)組的最后一個(gè)元素
push() 向數(shù)組的末尾添加一個(gè)或更多元素,并返回新的長(zhǎng)度。
reverse() 顛倒數(shù)組中元素的順序。
shift() 刪除并返回?cái)?shù)組的第一個(gè)元素
slice() 從某個(gè)已有的數(shù)組返回選定的元素
sort() 對(duì)數(shù)組的元素進(jìn)行排序
splice() 刪除元素,并向數(shù)組添加新元素。
toSource() 返回該對(duì)象的源代碼。
toString() 把數(shù)組轉(zhuǎn)換為字符串,并返回結(jié)果。
toLocaleString() 把數(shù)組轉(zhuǎn)換為本地?cái)?shù)組,并返回結(jié)果。
unshift() 向數(shù)組的開(kāi)頭添加一個(gè)或更多元素,并返回新的長(zhǎng)度。
valueOf() 返回?cái)?shù)組對(duì)象的原始值
注意
push和unshift都是返回新長(zhǎng)度
pop和shift是返回的刪除的那個(gè)元素
slice(start,end)方法并不會(huì)修改數(shù)組,而是返回一個(gè)子數(shù)組,start 到 end(不包括該元素)是開(kāi)始和結(jié)束的角標(biāo),不包含結(jié)束的那個(gè)
splice會(huì)修改原數(shù)組,第二個(gè)參數(shù)是要?jiǎng)h除的數(shù)量,后面的參數(shù)是要添加的元素
toLocaleString與toString的區(qū)別,
數(shù)組filter與find的區(qū)別,filter是找到所有符合要求的,find是找到第一個(gè)符合要求的,用他們找到元素但是拿不到下標(biāo),那就只能循環(huán)一次把下標(biāo)當(dāng)做屬性設(shè)置進(jìn)去;現(xiàn)在發(fā)現(xiàn)可以用findIndex來(lái)找指定屬性的下標(biāo),還是多看看mozilla的array文檔還有什么好用的方法吧
</>復(fù)制代碼
var array = [
{
"name": "aa",
"bianma": "11"
},
{
"name": "bb",
"bianma": "12"
}
]
array.findIndex(function(item){return item.name=="aa"})
參考:
JavaScript Array 對(duì)象
ES6 操作數(shù)組 方法 區(qū)別 map filter reduce find
JavaScript學(xué)習(xí)筆記:取數(shù)組中最大值和最小值
</>復(fù)制代碼
對(duì)于純數(shù)字?jǐn)?shù)組,可以使用JavaScript中的內(nèi)置函數(shù)Math.max()和Math.min()方法。著作權(quán)歸作者所有。
最簡(jiǎn)潔的方法是 基于ES2015的方法來(lái)實(shí)現(xiàn)此功能,使用展開(kāi)運(yùn)算符
</>復(fù)制代碼
var numbers = [1, 2, 3, 4];
Math.max(...numbers) // 4
Math.min(...numbers) //
再就是
</>復(fù)制代碼
Array.prototype.max = function () { return Math.max.apply({},this); }
Array.prototype.min = function () { return Math.min.apply({},this); }
var arr = [1,45,23,3,6,2,7,234,56];
arr.max(); // 234
arr.min(); // 1
循環(huán)刪除數(shù)組元素的幾種姿勢(shì)
用的是for循環(huán)和splice之后i--實(shí)現(xiàn);我就用IIFE來(lái)防止i污染全局,記得在(function(){})()前面加;、~、!等
js把1-100的數(shù)存入數(shù)組
最短的應(yīng)該是這個(gè)了 Array.from(new Array(100).keys())
</>復(fù)制代碼
Array.from() 方法從一個(gè)類似數(shù)組或可迭代對(duì)象中創(chuàng)建一個(gè)新的數(shù)組實(shí)例。
阮一峰--數(shù)組
擴(kuò)展運(yùn)算符(spread)是三個(gè)點(diǎn)(...)。它好比 rest 參數(shù)的逆運(yùn)算,將一個(gè)數(shù)組轉(zhuǎn)為用逗號(hào)分隔的參數(shù)序列。
注意,擴(kuò)展運(yùn)算符如果放在括號(hào)中,JavaScript 引擎就會(huì)認(rèn)為這是函數(shù)調(diào)用,否則就會(huì)報(bào)錯(cuò)。
</>復(fù)制代碼
(...[1,2])
// Uncaught SyntaxError: Unexpected number
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/102463.html
摘要:看了幾篇博客,了解了它的幾個(gè)常用屬性后,可以快速生成一個(gè)網(wǎng)格布局。同樣是出于使用動(dòng)態(tài)生成布局的需要,誕生了這個(gè)小工具。 作者:云荒杯傾 寫(xiě)在前面 這兩天了解了一下css的grid布局,發(fā)現(xiàn)確實(shí)很好用。看了幾篇博客,了解了它的幾個(gè)常用屬性后,可以快速生成一個(gè)網(wǎng)格布局。相較于傳統(tǒng)的float、定位等顯得更成體系,更規(guī)范,不需要一些hack做法。 雖然grid布局已經(jīng)很好,前端工程師中有一些...
摘要:看了幾篇博客,了解了它的幾個(gè)常用屬性后,可以快速生成一個(gè)網(wǎng)格布局。同樣是出于使用動(dòng)態(tài)生成布局的需要,誕生了這個(gè)小工具。 作者:云荒杯傾 寫(xiě)在前面 這兩天了解了一下css的grid布局,發(fā)現(xiàn)確實(shí)很好用。看了幾篇博客,了解了它的幾個(gè)常用屬性后,可以快速生成一個(gè)網(wǎng)格布局。相較于傳統(tǒng)的float、定位等顯得更成體系,更規(guī)范,不需要一些hack做法。 雖然grid布局已經(jīng)很好,前端工程師中有一些...
摘要:不過(guò)讓流行起來(lái)的原因應(yīng)該是是目前所有主流瀏覽器上唯一支持的腳本語(yǔ)言。經(jīng)過(guò)測(cè)試,數(shù)字字符串布爾日期可以直接賦值,修改不會(huì)產(chǎn)生影響。再考慮對(duì)象類型為或者的情況。對(duì)于結(jié)果聲明其類型。判斷對(duì)象的類型是還是,結(jié)果類型更改。 轉(zhuǎn)載自我的個(gè)人博客 歡迎大家批評(píng)指正 1. 第一個(gè)頁(yè)面交互 這里最需要學(xué)習(xí)的老師的代碼中,每一部分功能都由函數(shù)控制,沒(méi)有創(chuàng)建一個(gè)全部變量。且最后有一個(gè)函數(shù)來(lái)控制執(zhí)行代碼...
摘要:階段該階段主要通過(guò)循環(huán)遍歷數(shù)組從而達(dá)到去重的目的多次循環(huán)去掉重復(fù)元素以下所有方法默認(rèn)都那拿該數(shù)組進(jìn)行測(cè)試結(jié)果如下圖可見(jiàn)除了沒(méi)有去掉,其他效果都還挺好。 數(shù)組去重經(jīng)常被人拿來(lái)說(shuō)事,雖然在工作中不常用,但他能夠很好的考察js基礎(chǔ)知識(shí)掌握的深度和廣度,下面從js的不同階段總結(jié)一下去重的方法。 ES3階段 該階段主要通過(guò)循環(huán)遍歷數(shù)組從而達(dá)到去重的目的 多次循環(huán)去掉重復(fù)元素 // 以下所有方法默...
摘要:很多人可能誤認(rèn)為資源跨域時(shí)無(wú)法請(qǐng)求,實(shí)質(zhì)上請(qǐng)求是可以正常發(fā)起的指通常情況下,部分瀏覽器存在部分特例,后端也可能正常進(jìn)行了處理,中文指南調(diào)試技巧指南前端掘金作者緝熙簡(jiǎn)介是推出的一個(gè)天挑戰(zhàn)。 深入 JavaScript,從對(duì)象開(kāi)始 - 前端 - 掘金入坑前端開(kāi)發(fā)有一段時(shí)間了,面對(duì)形形色色的JavaScript優(yōu)秀框架,到底該選擇那一款呢?最近在使用Vue.js寫(xiě)一款markdown編輯器插...
閱讀 1743·2023-04-25 19:37
閱讀 1317·2021-11-16 11:45
閱讀 2816·2021-10-18 13:30
閱讀 2776·2021-09-29 09:34
閱讀 1649·2019-08-30 15:55
閱讀 3122·2019-08-30 11:10
閱讀 1843·2019-08-29 16:52
閱讀 1007·2019-08-29 13:18