Javascript中Array用法实例分析


Posted in Javascript onJune 13, 2015

本文实例讲述了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程序设计有所帮助。

Javascript 相关文章推荐
input、button的不同type值在ajax提交表单时导致的陷阱
Feb 24 Javascript
javascript测试题练习代码
Oct 10 Javascript
Egret引擎开发指南之运行项目
Sep 03 Javascript
js 数组去重的四种实用方法
Sep 09 Javascript
js+HTML5基于过滤器从摄像头中捕获视频的方法
Jun 16 Javascript
浅析script标签中的defer与async属性
Nov 30 Javascript
ng2学习笔记之bootstrap中的component使用教程
Mar 09 Javascript
分享5个好用的javascript文件上传插件
Sep 16 Javascript
swiper4实现移动端导航切换
Oct 16 Javascript
如何通过shell脚本自动生成vue文件详解
Sep 10 Javascript
JavaScript enum枚举类型定义及使用方法
May 15 Javascript
vue实现评价星星功能
Jun 30 Javascript
Javascript中arguments用法实例分析
Jun 13 #Javascript
Javascript中String的常用方法实例分析
Jun 13 #Javascript
Javascript中的方法和匿名方法实例详解
Jun 13 #Javascript
jquery实现简单的自动播放幻灯片效果
Jun 13 #Javascript
jquery实现简单手风琴菜单效果实例
Jun 13 #Javascript
jQuery实现的五子棋游戏实例
Jun 13 #Javascript
JavaScript合并两个数组并去除重复项的方法
Jun 13 #Javascript
You might like
php 之 没有mysql支持时的替代方案
2006/10/09 PHP
php中大括号作用介绍
2012/03/22 PHP
ThinkPHP模板中数组循环实例
2014/10/30 PHP
Referer原理与图片防盗链实现方法详解
2019/07/03 PHP
VBScript版代码高亮
2006/06/26 Javascript
Javascript YUI 读码日记之 YAHOO.util.Dom - Part.2 0
2008/03/22 Javascript
js获取时间(本周、本季度、本月..)
2013/11/22 Javascript
js 针对html DOM元素操作等经验累积
2014/03/11 Javascript
js实现对table动态添加、删除和更新的方法
2015/02/10 Javascript
JQuery ztree带筛选、异步加载实例讲解
2016/02/25 Javascript
JavaScript中对JSON对象的基本操作示例
2016/05/21 Javascript
浅谈js数据类型判断与数组判断
2016/08/29 Javascript
基于vue2.0+vuex+localStorage开发的本地记事本示例
2017/02/28 Javascript
给Easyui-Datebox设置隐藏或者不可用的解决方法
2017/05/26 Javascript
vue+mockjs模拟数据实现前后端分离开发的实例代码
2017/08/08 Javascript
解决vue热替换失效的根本原因
2018/09/19 Javascript
利用Angular2的Observables实现交互控制的方法
2018/12/27 Javascript
Windows下Node爬虫神器Puppeteer安装记
2019/01/09 Javascript
ElementUI中el-tree节点的操作的实现
2020/02/27 Javascript
Javascript异步执行不按顺序解决方案
2020/04/30 Javascript
js用正则表达式筛选年月日的实例方法
2021/01/04 Javascript
[46:03]LGD vs VGJ.T 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python socket.error: [Errno 98] Address already in use的原因和解决方法
2014/08/25 Python
Python用GET方法上传文件
2015/03/10 Python
用python实现对比两张图片的不同
2018/02/05 Python
在NumPy中创建空数组/矩阵的方法
2018/06/15 Python
使用Django连接Mysql数据库步骤
2019/01/15 Python
Django--权限Permissions的例子
2019/08/28 Python
python判断链表是否有环的实例代码
2020/01/31 Python
python能做哪些生活有趣的事情
2020/09/09 Python
css3中transition属性详解
2014/09/02 HTML / CSS
详解rem 适配布局
2018/10/31 HTML / CSS
统计每一学生的平均成绩
2014/06/06 面试题
个人社会实践自我鉴定
2014/03/24 职场文书
2016年大学迎新工作总结
2015/10/14 职场文书
Python import模块的缓存问题解决方案
2021/06/02 Python