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