JavaScript数组常用操作技巧汇总
本文实例汇总了JavaScript数组的常用操作技巧。分享给大家供大家参考。具体如下:
前言
相信大家都用惯了jquery或者underscore等这些类库中常用的数组相关的操作,如$.isArray,_.some,_.find等等方法。这里无非是对原生js的数组操作多了一些包装。
这里主要汇总一下JavaScript数组操作的常用API。相信对大家解决程序问题很有帮助。
一、性质
JavaScript中的数组是一种特殊的对象,用来表示偏移量的索引是该对象的属性,索引可能是整数。然而,这些数字索引在内部被转换为字符串类型,这是因为JavaScript对象中的属性名必须是字符串。
二、操作
1判断数组类型
vararray0=[]; //字面量 vararray1=newArray(); //构造器 //注意:在IE6/7/8下是不支持Array.isArray方法的 alert(Array.isArray(array0)); //考虑兼容性,可使用 alert(array1instanceofArray); //或者 alert(Object.prototype.toString.call(array1)==='[objectArray]');
2数组与字符串
非常简单:由数组转换为字符串,使用join;由字符串转换为数组,使用split。
//join-由数组转换为字符串,使用join console.log(['Hello','World'].join(',')); //Hello,World //split-由字符串转换为数组,使用split console.log('HelloWorld'.split('')); //["Hello","World"]
3查找元素
相信大家都常用字符串类型indexOf,却很少知道数组的indexOf同样可以用于查找元素。
//indexOf-查找元素 console.log(['abc','bcd','cde'].indexOf('bcd')); //1
// varobjInArray=[ { name:'king', pass:'123' }, { name:'king1', pass:'234' } ];
console.log(objInArray.indexOf({ name:'king', pass:'123' })); //-1
varelementOfArray=objInArray[0]; console.log(objInArray.indexOf(elementOfArray)); //0