摘要:返回數組內容的字符串表示形式將數組中每個元素轉為字符串,并用逗號連接。拍照連接符將數組中每個元素轉為字符串,用自定義的連接符連接每個元素需要用變量借助。
關于數組篇的記錄,純自己總結,會持續更新~
原生js方法var arr = []; var arr = new Array(); var arr = [1,2]; var arr = new Array(1,2,3); var arr = new Array(n);
**注意:new Array定義數組,會根據參數個數不同代表數組不同內容
js中數組越界不報錯!而是返回undefined**
Array.isArray(arr) // 數組的API arr instanceof Array //通過構造函數 Array.prototype.isPrototypeOf(arr) //通過原型 Object.prototype.toString.call(arr) //[Object Array]
for(var key in arr){ arr[key] 當前屬性值 }
arr.valueOf() // 返回值為該對象的原始值。 arr.toString() // 返回數組內容的字符串表示形式 String(arr) // 將數組中每個元素轉為字符串,并用逗號連接。——拍照 arr.join("連接符") // 將數組中每個元素轉為字符串,用自定義的"連接符"連接每個元素,需要用變量借助。 arr.reverse() // 將數組中元素的位置顛倒,并返回該數組,注意:原數組會改變 arr.sort() // 數組排序,按字符串大小排序,會改變原數組 arr.concat(otherArr) // 合并新元素,返回一個新數組需要用變量接住,不會改變原數組 arr.slice(start,end) // 剪切數組,含頭不含尾 ,返回新的數組,不會改變原數組 注意:拼接和截取: 都無法直接修改原數組而是返回新數組,用變量接住 arr.split([ 起始位置 | 要刪除元素的個數 | 要插入元素的值,可以寫入多個值 ] )剪切數組/替 換/新增 arr.indexOf(item) // 返回第一個匹配到的元素在數組中所在的位置 or -1 arr.lastIndexOf(item) 注意:IE6, 7, 8 不支持indexOf與lastIndexOf方法
arr.push() // 尾部添加元素,返回被新數組的長度,原數組會改變 arr.pop() // 尾部刪除元素,返回被刪除的元素,原數組會改變 arr.unshift(item) // 頭部添加元素,返回新數組的長度,原數組會改變 arr.shift(item) // 頭部刪除元素,返回被刪除的元素,原數組會改變
注意:ES5數組API這些都不會改變原數組,新的數組要用變量接住
參數:[ 調用every的數組的每一項元素 | 對應元素所在的位置 | 表示該數組 ]
arr.every(function(item,index,array){}) // 該函數對每一項都返回true,則返回true,否則返回false arr.some(function(item,index,array){}) // 該函數對其中一項返回true,則返回true arr.filter(callback) // 數組過濾,返回滿足條件的元素組成的一個新數組, arr.map(callback) // 對數組每一項進行計算等處理,返回處理結果組成的數組,返回的是一個新數組 arr.reduce(fn) // ?前一個元素 | 當前元素,從1開始 | 后一個元素的序列,從1開始計數 | 表示該數組 ] _ var arr = [1,2,3,4,5]; var reduceArr = arr.reduce(function(pre,cur,index,array){ return prev + cur; }) //15
...[arr] 數組擴展運算符 Math.min(...[arr]) 等同于Math.min.apply(null,arr) 替換數組的apply方法 arr1.push(...arr2) 等同于Array.prototype.push.apply(arr1,arr2) 一個數組添加到另一個數組的尾部 [...arr1,...arr2,...arr3] 等同于arr1.concat(arr2,arr3) 合并數組 let[first,...const]=[1,2,3,4],結果first=1,const=[2,3,4] 結合解構一起使用 Array.from() 將類數組對象和可遍歷的對象轉換為真正的數組(包括ES6新增的數據結構Set和Map) Array.from(“hello”) [“h”,”e”,”l”,”l”,”o”] let person={ 0:"張三", 1:"李四", 2:"王五", length:3 //必須要設置對象長度 }; let arr=Array.from(person); //等同于let arr=[].slice.call(person); Array.of(1,2,3) [1,3,4] 將一組值轉換為數組 Array()會因參數個數導致行為有差異 Array.find(function(val,index,arr)) 找到第一個符合條件的數組成員Array.findIndex(function(val,index,arr)) 找到第一個符合條件的數組位置 這兩個方法都可以發現NaN,彌補了數組的IndexOf方法的不足。 arr.includes(value,[start]) 可以找到NaN
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/90460.html
摘要:設計模式是以面向對象編程為基礎的,的面向對象編程和傳統的的面向對象編程有些差別,這讓我一開始接觸的時候感到十分痛苦,但是這只能靠自己慢慢積累慢慢思考。想繼續了解設計模式必須要先搞懂面向對象編程,否則只會讓你自己更痛苦。 JavaScript 中的構造函數 學習總結。知識只有分享才有存在的意義。 是時候替換你的 for 循環大法了~ 《小分享》JavaScript中數組的那些迭代方法~ ...
摘要:忍者級別的函數操作對于什么是匿名函數,這里就不做過多介紹了。我們需要知道的是,對于而言,匿名函數是一個很重要且具有邏輯性的特性。通常,匿名函數的使用情況是創建一個供以后使用的函數。 JS 中的遞歸 遞歸, 遞歸基礎, 斐波那契數列, 使用遞歸方式深拷貝, 自定義事件添加 這一次,徹底弄懂 JavaScript 執行機制 本文的目的就是要保證你徹底弄懂javascript的執行機制,如果...
摘要:如果沒有學習過計算機科學的程序員,當我們在處理一些問題時,比較熟悉的數據結構就是數組,數組無疑是一個很好的選擇。 showImg(https://segmentfault.com/img/bVTSjt?w=400&h=300); 1、常見 CSS 布局方式詳見: 一些常見的 CSS 布局方式梳理,涉及 Flex 布局、Grid 布局、圣杯布局、雙飛翼布局等。http://cherryb...
摘要:如果沒有學習過計算機科學的程序員,當我們在處理一些問題時,比較熟悉的數據結構就是數組,數組無疑是一個很好的選擇。 showImg(https://segmentfault.com/img/bVTSjt?w=400&h=300); 1、常見 CSS 布局方式詳見: 一些常見的 CSS 布局方式梳理,涉及 Flex 布局、Grid 布局、圣杯布局、雙飛翼布局等。http://cherryb...
閱讀 2746·2021-11-16 11:45
閱讀 1654·2021-09-26 10:19
閱讀 2051·2021-09-13 10:28
閱讀 2803·2021-09-08 10:46
閱讀 1530·2021-09-07 10:13
閱讀 1525·2019-08-30 13:50
閱讀 1374·2019-08-30 11:17
閱讀 1455·2019-08-29 13:18