javascript对数组的常用操作代码,javascript数组操作
分类:关于美高梅

1.数组的创始
var arr=new Array();
2.查找数组中的成分

1. shift:删除原数组第一项,并重回删除成分的值;假若数组为空则再次来到undefined
var a = [1,2,3,4,5];
var b = a.shift(); //a:[2,3,4,5] b:1
2. unshift:将参数增加到原数组开端,并赶回数组的尺寸 var a = [1,2,3,4,5];
var b = a.unshift(-2,-1); //a:[-2,-1,1,2,3,4,5] b:7
注:在IE6.0下测验重临值总为undefined,FF2.0下测验重临值为7,所以这些法子的重临值不可信赖赖,要求用再次来到值时可用splice代替本方法来行使。
3. pop:删除原数组最终一项,并回到删除成分的值;要是数组为空则再次回到undefined var a = [1,2,3,4,5];
var b = a.pop(); //a:[1,2,3,4] b:5
4. push:将参数增加到原数组末尾,并重返数组的尺寸
var a = [1,2,3,4,5];
var b = a.push(6,7); //a:[1,2,3,4,5,6,7] b:7
5. concat:重返七个新数组,是将参数增加到原数组中结成的 var a = [1,2,3,4,5];
var b = a.concat(6,7); //a:[1,2,3,4,5] b:[1,2,3,4,5,6,7]
6. splice(start,deleteCount,val1,val2,...):从start地方上马删除deleteCount项,并从该职位起插入val1,val2,...
var a = [1,2,3,4,5];
var b = a.splice(2,2,7,8,9); //a:[1,2,7,8,9,5] b:[3,4]
var b = a.splice(0,1); //同shift
a.splice(0,0,-2,-1); var b = a.length; //同unshift
var b = a.splice(a.length-1,1); //同pop
a.splice(a.length,0,6,7); var b = a.length; //同push
7. reverse:将数组反序
var a = [1,2,3,4,5];
var b = a.reverse(); //a:[5,4,3,2,1] b:[5,4,3,2,1]
8. sort(orderfunction):按钦定的参数对数组进行排序 var a = [1,2,3,4,5];
var b = a.sort(); //a:[1,2,3,4,5] b:[1,2,3,4,5]
9. slice(start,end):再次回到从原数组中钦命早先下标到告竣下标之间的项整合的新数组
var a = [1,2,3,4,5];
var b = a.slice(2,5); //a:[1,2,3,4,5] b:[3,4,5]
10. join(separator):将数组的因素组起叁个字符串,以separator为分隔符,省略的话则用暗中认可用逗号为分隔符 var a = [1,2,3,4,5];
var b = a.join("|"); //a:[1,2,3,4,5] b:"1|2|3|4|5"
数组是JavaScript提供的壹在这之中间对象,它是多个业内的聚众,大家得以加上(push)、删除(shift)里面元素,大家还是能透过for循环遍历里面包车型大巴因素,那么除了数组大家在JavaScript里仍可以有别的群集吗?
  由于JavaScript的言语特色,大家得以向通用对象动态拉长和删除属性。所以Object也足以看成是JS的一种独特的成团。下边相比较一下Array和Object的风味:
  Array:
新建:var ary = new Array(); 或 var ary = [];
增加:ary.push(value);
删除:delete ary[n];
遍历:for ( var i=0 ; i < ary.length ; ++i ) ary[i];
  Object:
新建:var obj = new Object(); 或 var obj = {};
增加:obj[key] = value; (key为string)
删除:delete obj[key];
遍历:for ( var key in obj ) obj[key];
  从地方的可比可以看到Object完全能够作为一个聚焦来采纳,在接纳Popup窗口创立Infiniti级Web页菜单(3)中本身介绍过Eric达成的不得了__MenuCache__,它也正是三个模仿的集纳对象。
  即使大家要在Array中搜寻出贰个点名的值,大家要求遍历整个数组:
代码:

 

shift:删除原数组第一项,并回到删除成分的值;假诺数组为空则重临undefined 
var a = [1,2,3,4,5]; 
var b = a.shift(); //a:[2,3,4,5] b:1 

复制代码 代码如下:

复制代码 代码如下:

 

unshift:将参数加多到原数组起来,并赶回数组的尺寸 
var a = [1,2,3,4,5]; 
var b = a.unshift(-2,-1); //a:[-2,-1,1,2,3,4,5] b:7 
注:在IE6.0下测量检验重回值总为undefined,FF2.0下测量试验重临值为7,所以那么些措施的重回值不可相信,需求用重回值时可用splice代替本方法来行使。 

for(var i=0;i<arr.length;i++)
if(arr[i]==temp)
return true;

var keyword = ;
  for ( var i=0 ; i < ary.length ; ++i )
  {
  if ( ary[i] == keyword )
  {
  // todo
  }
  }

小结一些,方便自身查阅,希望也能给爱怜编制程序的人带去一点好处。

pop:删除原数组最后一项,并赶回删除成分的值;假设数组为空则再次来到undefined 
var a = [1,2,3,4,5]; 
var b = a.pop(); //a:[1,2,3,4] b:5 

3.上面比较一下Array和Object的特点:
Array:
新建:var ary = new Array(); 或 var ary = [];
增加:ary.push(value);
删除:delete ary[n];
遍历:for ( var i=0 ; i < ary.length ; ++i ) ary[i];
  Object:
新建:var obj = new Object(); 或 var obj = {};
增加:obj[key] = value; (key为string)
删除:delete obj[key];
遍历:for ( var key in obj ) obj[key];
从上边包车型客车相比较能够看看Object完全能够视作八个凑合来选取,在使用Popup窗口创制Infiniti级Web页菜单(3)中本身介绍过Eric完毕的分外__MenuCache__,它约等于二个效仿的会集对象。
  就算大家要在Array中找出出多个内定的值,大家须求遍历整个数组:

  而我们在Object中搜寻二个钦赐的key的条约,只需倘若要使用:
代码:

concat:重返贰个新数组,是将参数增多到原数组中结成的 var a = [1,2,3,4,5]; var b = a.concat(6,7); //a:[1,2,3,4,5] b:[1,2,3,4,5,6,7]

push:将参数增多到原数组末尾,并赶回数组的长短 
var a = [1,2,3,4,5]; 
var b = a.push(6,7); //a:[1,2,3,4,5,6,7] b:7 

复制代码 代码如下:

复制代码 代码如下:

splice(start,deleteCount,val1,val2,...):从start地点上马删除deleteCount项,并从该岗位起插入val1,val2,... var a = [1,2,3,4,5]; var b = a.splice(2,2,7,8,9); //a:[1,2,7,8,9,5] b:[3,4] var b = a.splice(0,1); //同shift a.splice(0,0,-2,-1); var b = a.length; //同unshift var b = a.splice(a.length-1,1)

concat:重回贰个新数组,是将参数增添到原数组中结合的 
var a = [1,2,3,4,5]; 
var b = a.concat(6,7); //a:[1,2,3,4,5] b:[1,2,3,4,5,6,7] 

var keyword = ;
  for ( var i=0 ; i < ary.length ; ++i )
  {
  if ( ary[i] == keyword )
  {
  // todo
  }
  }

var key = '';
  var value = obj[key];
  // todo

pop:删除原数组最终一项,并再次回到删除成分的值;假诺数组为空则再次来到undefined

splice(start,deleteCount,val1,val2,...):从start地点上马删除deleteCount项,并从该职位起插入val1,val2,... 
var a = [1,2,3,4,5]; 
var b = a.splice(2,2,7,8,9); //a:[1,2,7,8,9,5] b:[3,4] 
var b = a.splice(0,1); //同shift 
a.splice(0,0,-2,-1); var b = a.length; //同unshift 
var b = a.splice(a.length-1,1); //同pop 
a.splice(a.length,0,6,7); var b = a.length; //同push 

  而笔者辈在Object中寻觅三个点名的key的条目,只需假若要选取:

 Object的这些特点能够用来快捷的检索Unique的字符串集结,遍历Array的年华复杂度是O(n),而遍历Object的年华复杂度是O(1)。即便对于一千0次集结的for检索代价也就几十ms,可是倘诺是1000*一千次搜索或更加多,使用Object的优势一下就反映出来了。以前笔者做了叁个mapping,把九17个Unique的字符mapping到一千个字符串数组上,耗费时间25-30s!后来把for遍历改成了Object模拟的成团的分子引用,同样的数据量mapping,耗费时间仅1.7-2s!!!
  对于集结的遍历功能(从高到低):var value = obj[key]; > for ( ; ; ) > for ( in )。效用最差的正是for( in )了,要是集结过大,尽量不要使用for ( in )遍历。

var a = [1,2,3,4,5]; var b = a.pop(); //a:[1,2,3,4] b:5

reverse:将数组反序 
var a = [1,2,3,4,5]; 
var b = a.reverse(); //a:[5,4,3,2,1] b:[5,4,3,2,1] 

复制代码 代码如下:

. shift:删除原数组第一项,并回到删除成分的值;假如数组为空则再次来到undefined var a = [1,2,3,4,5]; var b = a.shift(); //a:[2,3,4,5] b:1 2. unshift:将...

push:将参数加多到原数组末尾,并赶回数组的尺寸

sort(orderfunction):按钦赐的参数对数组进行排序 
var a = [1,2,3,4,5]; 
var b = a.sort(); //a:[1,2,3,4,5] b:[1,2,3,4,5] 

var key = '';
  var value = obj[key];
  // todo

var a = [1,2,3,4,5]; var b = a.push(6,7); //a:[1,2,3,4,5,6,7] b:7

slice(start,end):再次来到从原数组中钦定开始下标到甘休下标之间的项整合的新数组 
var a = [1,2,3,4,5]; 
var b = a.slice(2,5); //a:[1,2,3,4,5] b:[3,4,5] 

 Object的这么些个性能够用来飞快的检索Unique的字符串集结,遍历Array的时日复杂度是O(n),而遍历Object的日子复杂度是O(1)。就算对于10000次集合的for检索代价也就几十ms,但是一旦是一千*1000次搜索或更加多,使用Object的优势一下就反映出来了。从前小编做了二个mapping,把九十五个Unique的字符mapping到一千个字符串数组上,耗费时间25-30s!后来把for遍历改成了Object模拟的群集的积极分子援引,一样的数据量mapping,耗费时间仅1.7-2s!!!
  对于集合的遍历效能(从高到低):var value = obj[key]; > for ( ; ; ) > for ( in )。功效最差的正是for( in )了,借使集结过大,尽量不要接纳for ( in )遍历。

concat:重临三个新数组,是将参数增加到原数组中结合的

join(separator):将数组的因素组起三个字符串,以separator为分隔符,省略的话则用暗中同意用逗号为分隔符 
var a = [1,2,3,4,5]; 
var b = a.join("|"); //a:[1,2,3,4,5] b:"1|2|3|4|5" 

  1. shift:删除原数组第一项,并重返删除成分的值;倘若数组为空则再次回到undefined
    var a = [1,2,3,4,5];
    var b = a.shift(); //a:[2,3,4,5] b:1
    unshift:将参数增多到原数组最初,并赶回数组的尺寸
    var a = [1,2,3,4,5];
    var b = a.unshift(-2,-1); //a:[-2,-1,1,2,3,4,5] b:7
    注:在IE6.0下测验再次回到值总为undefined,FF2.0下测验再次回到值为7,所以这一个点子的重临值不可信赖,要求用重回值时可用splice取代本方法来使用。
    pop:删除原数组最后一项,并回到删除成分的值;假诺数组为空则重临undefined
    var a = [1,2,3,4,5];
    var b = a.pop(); //a:[1,2,3,4] b:5
    push:将参数增加到原数组末尾,并再次回到数组的长度
    var a = [1,2,3,4,5];
    var b = a.push(6,7); //a:[1,2,3,4,5,6,7] b:7
    concat:再次来到二个新数组,是将参数增加到原数组中结成的
    var a = [1,2,3,4,5];
    var b = a.concat(6,7); //a:[1,2,3,4,5] b:[1,2,3,4,5,6,7]
    splice(start,deleteCount,val1,val2,...):从start地点上马删除deleteCount项,并从该地方起插入val1,val2,...
    var a = [1,2,3,4,5];
    var b = a.splice(2,2,7,8,9); //a:[1,2,7,8,9,5] b:[3,4]
    var b = a.splice(0,1); //同shift
    a.splice(0,0,-2,-1); var b = a.length; //同unshift
    var b = a.splice(a.length-1,1); //同pop
    a.splice(a.length,0,6,7); var b = a.length; //同push
    reverse:将数组反序
    var a = [1,2,3,4,5];
    var b = a.reverse(); //a:[5,4,3,2,1] b:[5,4,3,2,1]
    sort(orderfunction):按钦赐的参数对数组举行排序
    var a = [1,2,3,4,5];
    var b = a.sort(); //a:[1,2,3,4,5] b:[1,2,3,4,5]
    slice(start,end):再次回到从原数组中内定伊始下标到截至下标之间的项组成的新数组
    var a = [1,2,3,4,5];
    var b = a.slice(2,5); //a:[1,2,3,4,5] b:[3,4,5]
    join(separator):将数组的成分组起一个字符串,以separator为分隔符,省略的话则用暗中同意用逗号为分隔符
    var a = [1,2,3,4,5];
    var b = a.join("|"); //a:[1,2,3,4,5] b:"1|2|3|4|5"

var a = [1,2,3,4,5]; var b = a.concat(6,7); //a:[1,2,3,4,5] b:[1,2,3,4,5,6,7]

数组是JavaScript提供的二个之中对象,它是贰个标准的会合,大家能够拉长(push)、删除(shift)里面成分,我们还足以通过for循环遍历里面包车型客车成分,那么除了数组我们在JavaScript里还足以有别的集合吗? 

数组是JavaScript提供的贰个里边对象,它是二个正规的集结,大家得以加上(push)、删除(shift)里面成分,大家还足以经过for循环遍历里面包车型地铁成分

shift:删除原数组第一项,并再次回到删除成分的值;假如数组为空则重返undefined

鉴于JavaScript的语言特征,大家可以向通用对象动态增进和删除属性。所以Object也得以当做是JS的一种至极的会合。上面相比一下Array和Object的特征: 

你可能感兴趣的作品:

  • js中的关联数组与普通数组详解
  • JavaScript中的关联数组难题
  • JavaScript中的索引数组、关联数组和静态数组、动态数组疏解
  • 关于JavaScript中的关联数组深入分析
  • Javascript的正规数组和涉及数组相比相当的小结
  • js以指标为索引的涉嫌数组
  • JavaScript 以目的为索引的关周全组
  • js二维数组定义和初叶化的两种方法总计
  • JS数组的遍历情势for循环与for...in
  • js数组去重的三种常用方法总计
  • jQuery 遍历json数组的落到实处代码
  • JavaScript关联数组用法分析【概念、定义、遍历】

var a = [1,2,3,4,5]; var b = a.shift(); //a:[2,3,4,5] b:1

Array: 

unshift:将参数增添到原数组起来,并回到数组的长短

新建:var ary = new Array(); 或 var ary = []; 
增加:ary.push(value); 
删除:delete ary[n]; 
遍历:for ( var i=0 ; i < ary.length ; ++i ) ary[i]; 

var a = [1,2,3,4,5]; var b = a.unshift(-2,-1); //a:[-2,-1,1,2,3,4,5] b:7

Object: 

注:在IE6.0下测验重返值总为undefined,FF2.0下测量试验重返值为7,所以这些办法的再次来到值离谱,必要用重回值时可用splice替代本方法来选取

新建:var obj = new Object(); 或 var obj = {}; 
增加:obj[key] = value; (key为string) 
删除:delete obj[key]; 
遍历:for ( var key in obj ) obj[key]; 

splice(start,deleteCount,val1,val2,...):从start地方上马删除deleteCount项,并从该职位起插入val1,val2,... var a = [1,2,3,4,5]; var b = a.splice(2,2,7,8,9); //a:[1,2,7,8,9,5] b:[3,4] var b = a.splice(0,1); //同shift a.splice(0,0,-2,-1); var b = a.length; //同unshift var b = a.splice(a.length-1,1); //同pop a.splice(a.length,0,6,7); var b = a.length; //同push

从上边包车型的士比较能够看到Object完全能够看做三个凑合来行使,在动用Popup窗口创设Infiniti级Web页菜单(3)中本身介绍过Eric完毕的百般__MenuCache__,它相当于一个仿照的群集对象。 

reverse:将数组反序 var a = [1,2,3,4,5]; var b = a.reverse(); //a:[5,4,3,2,1] b:[5,4,3,2,1]

一旦我们要在Array中搜索出二个钦赐的值,大家须要遍历整个数组: 

sort(orderfunction):按钦定的参数对数组进行排序

Javascript代码

var a = [1,2,3,4,5]; var b = a.sort(); //a:[1,2,3,4,5] b:[1,2,3,4,5]

  1. var keyword = ;   
  2. for ( var i=0 ; i < ary.length ; ++i ){   
  3.   if ( ary[i] == keyword ){   
  4.      // todo   
  5.   }   
  6. }  

slice(start,end):再次来到从原数组中钦点开头下标到停止下标之间的项整合的新数组 var a = [1,2,3,4,5]; var b = a.slice(2,5); //a:[1,2,3,4,5] b:[3,4,5]

而大家在Object中搜寻叁个内定的key的条约,只需假如要动用: 

join(separator):将数组的要素组起二个字符串,以separator为分隔符,省略的话则用默许用逗号为分隔符 var a = [1,2,3,4,5]; var b = a.join("|"); //a:[1,2,3,4,5] b:"1|2|3|4|5"

Javascript代码

数组是JavaScript提供的贰个里头对象,它是一个标准的晤面,大家得以拉长(push)、删除(shift)里面成分,大家还是能够透过for循环遍历里面的要素,那么除了数组大家在JavaScript里还足以有别的集结吗?

  1. var key = '';   
  2. var value = obj[key];  

  由于JavaScript的语言特色,大家得以向通用对象动态增进和删除属性。所以Object也可以作为是JS的一种独特的会见。下边临比一下Array和Object的特点:

Object的那几个性子能够用来急迅的检索Unique的字符串集结,遍历Array的岁月复杂度是O(n),而遍历Object的小时复杂度是 O(1)。固然对于一千0次集结的for检索代价也就几十ms,然而一旦是一千*一千次寻找或越来越多,使用Object的优势一下就体现出来了。此前小编做了一个mapping,把九18个Unique的字符mapping到一千个字符串数组上,耗费时间25-30s!后来把for遍历改成了Object模拟的晤面的积极分子援引,一样的数据量mapping,耗费时间仅1.7-2s!!! 

  Array:

对于集结的遍历作用(从高到低):var value = obj[key]; > for ( ; ; ) > for ( in )。功能最差的正是for( in )了,假设会集过大,尽量不要使用for ( in )遍历。

新建:var ary = new Array(); 或 var ary = []; 增加:ary.push(value); 删除:delete ary[n]; 遍历:for ( var i=0 ; i < ary.length ; ++i ) ary[i];

  Object:

新建:var obj = new Object(); 或 var obj = {}; 增加:obj[key] = value; (key为string) 删除:delete obj[key]; 遍历:for ( var key in obj ) obj[key];

  从上边的相比较能够看出Object完全能够当作四个汇聚来利用,在应用Popup窗口成立Infiniti级Web页菜单(3)中自己介绍过Eric完结的不胜__MenuCache__,它约等于三个仿照的会见对象。

  

借使大家要在Array中寻觅出一个点名的值,大家需求遍历整个数组:

   代码: var keyword = ;   for ( var i=0 ; i < ary.length ; ++i )   {   if ( ary[i] == keyword )   {   // todo   }   }

 

  而大家在Object中找找贰个点名的key的条条框框,只需假如要接纳:

         

         代码: var key = '';   var value = obj[key];   // todo

 Object的那天性子能够用来急速的检索Unique的字符串会集,遍历Array的光阴复杂度是O(n),而遍历Object的时光复杂度是O(1)。尽管对于一千0次会集的for检索代价也就几十ms,

 是借使是一千*一千次寻觅或越来越多,使用Object的优势一下就体现出来了。以前作者做了八个mapping,把九二十一个Unique的字符mapping到一千个字符串数组上,耗费时间25-30s!后来把for遍历改成了Object模拟的成团的积极分子援引,一样的数据量mapping,耗费时间仅1.7-2s!!

对此集结的遍历作用(从高到低):var value = obj[key]; > for ( ; ; ) > for ( in )。功能最差的正是for( in )了,要是会集过大,尽量不要使用for ( in )遍历。

 

 

 

本文由美高梅网址发布于关于美高梅,转载请注明出处:javascript对数组的常用操作代码,javascript数组操作

上一篇:基于jquery实现图片广告轮换效果代码,基于jque 下一篇:jQuery中extend函数详解,写自已的js类库需要的核心
猜你喜欢
热门排行
精彩图文