这篇文章主要介绍了Javascript中Array用法,实例分析了javascript中数组的遍历、传值、比较等常用技巧,需要的朋友可以参考下
本文实例讲述了Javascript中Array用法。分享给大家供大家参考。具体分析如下:
JavaScript中的Array对象就是数组,首先是一个动态数组,而且是一个像C#、Java中“数组、List、HashMap/Dictionary”等的超强综合体。
Array数组
使用方式:
例1:
- var citys = new Array();
- //创建数组对象,无需初始化长度,动态
- citys[0] = '上海';
- citys[1] ='北京';
- citys[2] = '深圳';
- for(var i=0; i< citys.length; i++){
- alert(citys[i]);
- }
例2(推荐):
- var arr=[10,true,'哇咔咔'];
- for(var i=0;i<arr.length;i++){
- alert(arr[i]);
- }
forin遍历Array数组
- var arr=['哈尼族','壮族','满族','漂族'];
- for(var item in arr){
- alert(item+'===='+arr[item]);
- }
Array键值对
使用方式
例如:
- var arr=new Array();
- arr["name"]='Jack';
- arr["age"]=28;
- arr["gender"]='fale';
- arr["height"]=180;
- for(var item in arr){
- alert(item+'===='+arr[item]);
- }
遍历Array键值对
forin循环
- var arr={name:'James',age:28};
- for(var item in arr){
- alert(item+'==='+arr[item]);
- }
通过对象.键
- var arr={name:'James',age:28};
- alert(arr.name);
- alert(arr.age);
方法传值
- function f1(s){
- alert(s.name);
- alert(s.age);
- }
- f1({name:'Rose',age:20});
特殊的家伙
例1:
- var arr=[{name:'James',age:19},{name:'Rose',age:18},{name:'Max',age:20}];
- for(var i=0;i<arr.length;i++){
- alert(arr[i].name+'==='+arr[i].age);
- }
例2:
- var code={name:'Max',children:[{name:'jack',age:20},{name:'rose',age:18}]};
- alert(code.name);
- for(var i=0;i<code.children.length;i++){
- alert(code.children[i].name+'>>'+code.children[i].age);
- }
- //当然forin也可以,但麻烦
- for(var item in code.children){
- alert(item+'>>'+code.children[item].name+'==='+code.children[item].age);
- }
Array比较
自定义一个通用的比较方法
- function max(arr,compare){
- var m=arr[0];
- for(var i=1;i<arr.length;i++){
- if(compare(arr[i],m)){
- m=arr[i];
- }
- }
- return m;
- }
- var s1=max([12,32,33,100,8],function(n1,n2){
- return n1>n2;
- });
- alert(s1);
- var s2=max(["aa","bbbb","ccc"],function(n1,n2){
- return n1.length>n2.length;
- });
- alert(s2);
Javascript中的比较方法sort()
例1:
- var arr=[23,12,56,200,45];
- arr.sort(function(n1,n2){
- return n1>n2;
- });
- alert(arr);
- var arrStr=["aa","bbb","cccc"];
- arrStr.sort(function(n1,n2){
- return n1.length>n2.length;
- });
- alert(arrStr);
例2:
- var arr=[{name:'Bob',age:100},{name:'Tom',age:23},{name:'Rose',age:78}];
- arr.sort(function(n1,n2){
- return n1.age>n2.age;
- });
- for(var i=0;i<arr.length;i++){
- alert(arr[i].name);//Tom,Rose,Bob
- }
希望本文所述对大家的javascript程序设计有所帮助。
新闻热点
疑难解答
图片精选