摘要:屬性名描述為對象添加屬性方法返回數(shù)組對象引用返回數(shù)組元素數(shù)目方法名描述返回更改原數(shù)組連接多個數(shù)組連接后新數(shù)組將數(shù)組中所有元素合為一個字符串。
屬性名 | 描述 |
---|---|
prototype | 為對象添加屬性、方法 |
constructor | 返回數(shù)組對象引用 |
length | 返回數(shù)組元素數(shù)目 |
方法名 | 描述 | 返回 | 更改原數(shù)組 |
---|---|---|---|
concat() | 連接多個數(shù)組 | 連接后新數(shù)組 | N |
join("") | 將數(shù)組中所有元素合為一個字符串。按分隔符劃分 | 合并后新數(shù)組 | N |
toString() | 數(shù)組轉(zhuǎn)換為字符串( 與無參join相同,逗號連接) | 轉(zhuǎn)換后字符串 | N |
pop() | 刪除數(shù)組最后一個元素(棧頂) | 刪除的元素值 | Y |
push() | 向數(shù)組的末尾添加一個/多個元素 | 新數(shù)組長度 | Y |
shift() | 刪除數(shù)組第一個元素 | 刪除的元素值 | Y |
unshift() | 向數(shù)組的開頭添加一個/多個元素 | 新數(shù)組長度 | Y |
reverse() | 顛倒數(shù)組中元素的順序 | 倒序后數(shù)組 | Y |
slice(start,end) | 截取從start到end子數(shù)組(end省略為數(shù)組末尾) | 截取子數(shù)組 | N |
splice() | (start,length,item1,item2,...)刪除元素并添加新元素 | 刪除子數(shù)組 | Y |
sort() | 對數(shù)組的元素進行排序(可自定規(guī)律) | 排序后數(shù)組 | Y |
valueOf() | 返回 Array 對象的原始值 | Array對象 | N |
indexOf() | 返回元素在數(shù)組中首次出現(xiàn)的位置(嚴格匹配===) | 下標/-1 | N |
new Array(); new Array(size); new Array(element0, element1, ..., elementn); var arr = []; //字面量方式
經(jīng)測試用字面量方式跟new Array()耗時差不多,使用習慣的差距吧~ new Array()能初始化長度~
屬性prototype 向?qū)ο筇砑訉傩院头椒?/p>
function em(A,B) { this.A = A; this.B = B; } var e = new em("AA","BB"); em.prototype.C = null; e.C = 20000; console.log(e.C); //20000 console.log(e); //em {A:"AA" , B:"BB" , C : 20000 }
constructor 返回對創(chuàng)建此對象的數(shù)組函數(shù)的引用
function employee(name,job) { this.name = name; this.job = job; } var bill = new employee("Bill"); console.log(typeof bill.constructor); // function console.log(bill.constructor); //function employee(name){this.name=name;this.job=job;}方法
concat() 連接兩個或更多的數(shù)組(返回被連接數(shù)組的副本)
var arr = [1, 2, 3]; var arr1 = [6, 7]; console.log(arr.concat(4, 5, arr1)); //[1, 2, 3, 4, 5, 6, 7]
join() 把數(shù)組的所有元素放入一個字符串,元素通過指定的分隔符分隔。
var arr = ["item 1", "item 2", "item 3"]; var list = "
toString() 數(shù)組轉(zhuǎn)換為字符串(與無參的 join()方法返回的串相同)
var arr = new Array(3) arr[0] = "A" arr[1] = "B" arr[2] = "C" console.log(arr.toString()); //"A,B,C"
pop() 刪除數(shù)組的最后一個元素,數(shù)組長度減 1,并返回被刪除的元素的值
若數(shù)組為空,則pop()返回undefined值
var arr = ["A", "B", "C"]; console.log(arr); //["A", "B", "C"] console.log(arr.pop()); //"C" console.log(arr); //["A", "B"]
push() 向數(shù)組的末尾添加一個或更多元素,并返回新的長度
var arr = ["A", "B", "C"]; console.log(arr); //["A", "B", "C"] console.log(arr.push("D")); //4 console.log(arr); ////["A", "B", "C" , "D"]
reverse() 顛倒數(shù)組中元素的順序
var arr = ["A", "B", "C"]; arr.reverse(); console.log(arr);// ["C", "B", "A"]
slice(start,end) 從數(shù)組中返回選定的子數(shù)組
var arr = ["A", "B", "C"]; // 從第一個元素開始截取到數(shù)組結(jié)尾 console.log(arr.slice(1)); //["B", "C"] console.log(arr); //["A", "B", "C"]
splice() 刪除元素,并向數(shù)組添加新元素
(直接對數(shù)組操作)
① 刪除指定范圍的數(shù)組元素:
var arr = new Array(6); arr[0] = "A"; arr[1] = "B"; arr[2] = "C"; arr[3] = "D"; arr[4] = "E"; arr[5] = "F"; console.log(arr); //["A", "B", "C", "D", "E", "F"] // 刪除第三個元素以后的三個數(shù)組元素(包含第三個元素) console.log(arr.splice(2, 3)); //["C", "D", "E"] console.log(arr); //["A", "B", "F"]
② 從指定下標開始插入指定元素(元素個數(shù)不限):
var arr = new Array(6); arr[0] = "A"; arr[1] = "B"; arr[2] = "C"; arr[3] = "D"; arr[4] = "E"; arr[5] = "F"; console.log(arr); //["A", "B", "C", "D", "E", "F"] console.log(arr.splice(2, 0, "AA","BB")); // [] console.log(arr);//["A", "B", "AA" , "BB" , "C", "D", "E", "F"]
③ 刪除指定范圍的數(shù)組元素,并用指定元素替換(元素個數(shù)不限):
var arr = new Array(6); arr[0] = "A"; arr[1] = "B"; arr[2] = "C"; arr[3] = "D"; arr[4] = "E"; arr[5] = "F"; console.log(arr);//["A", "B", "C", "D", "E", "F"] console.log(arr.splice(2, 1, "AA","BB")); // ["C"] console.log(arr); //["A", "B", "AA", "BB", "D", "E", "F"]
sort() 對數(shù)組的元素進行排序
對數(shù)組的引用
數(shù)組在原數(shù)組上進行排序,不生成副本。該方法默認是按照字符編碼(ASCII)的順序進行排序的
var arr = new Array(3); arr[0] = "D"; arr[1] = "S"; arr[2] = "A"; console.log(arr); //["D", "S", "A"] console.log(arr.sort()); //["A", "D", "S"]
自行指定排序規(guī)則。如下:
var arr = new Array(6); arr[0] = 10; arr[1] = 5; arr[2] = 40; arr[3] = 25; arr[4] = 1000; arr[5] = 1; console.log(arr); //[10, 5, 40, 25, 1000, 1] //升序 console.log(arr.sort(function (a, b) {return a - b;}));// [1, 5, 10, 25, 40, 1000]
valueOf() 返回相應的原始值
var arr = new Array(2); arr[0] = 10 arr[1] = 5 console.log(arr); //[10, 5] console.log(typeof arr.valueOf()); //object console.log(arr.valueOf()); //[10, 5]
shift() 刪除并返回數(shù)組的第一個元素
var arr = ["A", "B", "C"]; console.log(arr); //["A", "B", "C"] console.log(arr.shift()); //A console.log(arr); //["B", "C"]
unshift() 向數(shù)組的開頭添加一個或更多元素,并返回新的長度
var arr = ["A", "B", "C"]; console.log(arr); //["A", "B", "C"] console.log(arr.unshift("AA")); //4 console.log(arr);//["AA", "A", "B", "C"]
indexOf() 返回元素在數(shù)組中出現(xiàn)位置
額 之前一直以為只有string有這個方法... 補上補上
var arr = ["orange", "2016", undefined , null ,NaN]; console.log(arr.indexOf("orange")); //0 console.log(arr.indexOf("o")); //-1 console.log(arr.indexOf("2016")); //1 console.log(arr.indexOf(2016)); //-1 console.log(arr.indexOf("undefined")); //-1 console.log(arr.indexOf(null)); //3 console.log(arr.indexOf(NaN)); //-1
以上只是為了論證這里的indexOf使用的是嚴格匹配(===),不會像string的indexOf一樣隱式轉(zhuǎn)換成字符串進行匹配~
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/82208.html
摘要:即構(gòu)造器的原型對象即構(gòu)造器的原型對象和的關(guān)系是每個對象都有的一個屬性,而是函數(shù)才會有的屬性。不可以使用對象,不存在,可以使用代替。在開發(fā)過程中,需要保證某個元素的在其同級元素中具有唯一性。 1.理解原型、原型鏈? 每創(chuàng)建一個函數(shù),函數(shù)上都有一個prototype的屬性,他是一個對象。這個對象的作用就是當使用它創(chuàng)建實例的時候,這些實例都會共享原型上的屬性和方法。當我們訪問對象中的某個屬性...
摘要:題目來源前端實習生面試總結(jié)最近開始了幾次面試,雖然還不知道結(jié)果如何,但是還是要記錄下來進行一個總結(jié),同樣也希望對正在準備面實習生的童鞋們有所幫助最后一個參數(shù)是做什么用的答規(guī)定事件是冒泡還是捕獲。 最近一直在多看基礎的書多碼代碼準備找實習,在網(wǎng)上也搜羅了不少面經(jīng),現(xiàn)在把搜羅到的實習生面試題自己整理一下。 題目來源:前端實習生面試總結(jié)最近開始了幾次面試,雖然還不知道結(jié)果如何,但是還是要記錄...
閱讀 1953·2021-09-30 09:46
閱讀 1366·2019-08-30 15:43
閱讀 1123·2019-08-29 13:28
閱讀 1922·2019-08-29 11:24
閱讀 1681·2019-08-26 13:22
閱讀 3892·2019-08-26 12:01
閱讀 1816·2019-08-26 11:33
閱讀 3242·2019-08-23 15:34