js操作数组
一、數組的聲明方式:
var colors = new Array();//創建數組
var colors = new Array(20);//創建20個長度的數組
var colors = new Array("Greg");//創建字符串數組
var name=[];//空數組
var a = [[1,2],[3,4]];//多維數組
關聯數組:
var lennon = Array ();
lennon["name"] = "john";
lennon["year"] = 1940;
lennon["living"] =false;
對象數組:
var a={name:123};
var b={age:456};
var objarr = [a,b];
//輸出對象的名和值
alert(Object.keys(objarr[0])+":"+objarr[0].name+","+Object.keys(objarr[1])+":"+objarr[1].age);
讀取設置數組的代碼示例:
var colors = ["red","blue","green"];//定義一個字符串數組
alert(colors[0]);//顯示第一項
colors[2] = "black";//修改第三項
colors[3] = "brown";//新增第四項
注意:
?1、var colors = ["red","blue","green"];//創建一個包含3個字符串的數組
? ?colors.length =2;
??alert(color[2]); //undefined
?2、var colors = ["red","blue","green"];
colors[99] ="black"; //在位置99添加一個顏色,其中3至98都是不存在,取值會報undefined。
alert(colors.length);//100
二、數組檢測
1、instanceof
相關示例:
if ( value instanceof Array){//檢測值是否為數組
//對數組執行某些操作
}
2 、Array.isArray()是ECMAScript5增加的方法,支持ie9、firefox 4+、safari 5+、opera 10.5+、Chome。
if ( Array.isArray(value)){//檢測值是否為數組
//對數組執行某些操作
}
相關示例:
var a = [1, 2, 3];
typeof a;// "object"
Array.isArray(a);?// true
上面代碼中,typeof運算符只能顯示數組的類型是Object,而Array.isArray方法可以對數組返回true。Array.isArray方法用來判斷一個值是否為數組。它可以彌補typeof運算符的不足。
三、數組轉換
示例一:
var colors = ["red","blue","green"];
alert(colors.tostring()); //red,blue,green
alert(colors.valueof()); //red,blue,green
alert(colors); //red,blue,green
示例二:
var a = [1, 2, 3];
a.valueOf() // [1, 2, 3]?valueOf方法返回數組本身。
a.toString() // "1,2,3"?返回數組的字符串形式。
var a = [1, 2, 3, [4, 5, 6]];
a.toString() // "1,2,3,4,5,6"
a.toLocaleString(); ?//1,2,3 ?當調用此方法時會創建一個數組值的以逗號分隔的字符串
四、數組的相關操作
1、分割符的使用:
join方法以參數作為分割符,將所有數組成員組成一個字符串返回。如果不提供參數,默認用逗號分割。
相關示例:
var a = [1,2,3,4];
a.john(' '); // ?'1 2 3 4'
a.john(' | '); // ?"1 | 2 | 3 | 4"
a.john(); // "1,2,3,4"
如果數組成員是undefined或null或空位,會被轉成空字符串。
[undefined, null].join('#')?// '#'
['a',, 'b'].join('-')?// 'a--b'
通過call方法,這個方法也可以用于字符串。
Array.prototype.join.call('hello', '-')?// "h-e-l-l-o"
?
join方法也可以用于類似數組的對象。
var obj = { 0: 'a', 1: 'b', length: 2 };
Array.prototype.join.call(obj, '-')?// 'a-b'
?
2、增加數組:
1、unshift() 方法向數組的開頭添加一個或多個元素,并返回新的長度。 //?注意:會改變原數組
相關示例:
var a = ['a', 'b', 'c'];
?a.unshift('x'); // 4
? ? ? ? ? ? ?a // ['x', 'a', 'b', 'c']
2、slice()方法
3、
3、刪除數組:
4、修改數組:
5、合并數組:
綜合示例:
?
五、數組索引查找
?
六、數組迭代
?
七、數組排序
?
轉載于:https://www.cnblogs.com/john-sr/p/5839404.html
總結
- 上一篇: 从web移动端布局到react nati
- 下一篇: js中的()