Javascript 数组下标
1、下面使用JavaScript数组下标,我们看示例吧。
为数组下标指定负值:
var a = []; // 定义空数组直接量
a[-1] = 1; // 为下标为-1的元素赋值
alert(a.length); // 返回值为0,说明数组长度没有增加
alert(a[-1]); // 返回1,说明这个元素还是存在的
alert(a["-1"]); // 返回1,说明这个值以对象属性的形式被存储
var a = [];
a[true] = 1;
a[false] = 0;
alert(a.length); // 返回值为0,说明数组长度没有增加
alert(a[true]); // 返回值为1
alert(a[false]); // 返回值为0
alert(a[0]); // 返回undefined
alert(a[1]); // 返回undefined
a["1"] = 1;
alert(a[1]); // 返回值为1
2、这种数据格式被称为哈希表(或称关联数组,伪数组),哈希表的数据检索速度要优于数组迭代检索。对于下面操作:
var a = [["张三",1],["李四",2],["王五",3]]; // 二维数组
for(var i in a){ // 遍历二维数组
if(a[i][0] == "李四") alert(a[i][1]) ; // 检索指定元素
}
var a = []; // 定义空数组
a["张三"] = 1; // 以文本下标来存储元素的值
a["李四"] = 2;
a["王五"] = 3;
alert(a["李四"] ); // 快速定位检索
3、JavaScript不支持二维数组,用户可以模仿二维数组的语法格式来定义数组。下面写法在语法上虽然不符合规定,但是JavaScript不会提示编译错误:
var a = [];
a[0,0] = 1;
a[0,1] = 2;
a[1,0] = 3;
a[1,1] = 4;
alert(a.length); // 返回2,说明仅有两个元素有效
alert(a[0]); // 返回3
alert(a[1]); // 返回3
var a = [], i = 1; // 初始化变量
while( i < 10 ){ // 指定循环次数
a[i *= 2 , i] = i; // 指定下标为2的幂数时才进行赋值
}
alert( a.length ); // 返回17
alert( a ); // 返回数组[,,2,, 4,,,, 8,,,,,,,, 16]
4、对象也可以作为数组下标,JavaScript会试图把对象转换为数值,如果不行,则把它转换为字符串,然后以文本下标的形式进行操作。
var a = []; // 数组直接量
var b = function(){ // 函数直接量
return 2;
}
a[b] = 1; // 把对象作为数组下标
alert( a.length ); // 返回长度为0
alert( a[b] ); // 返回1
var s =b.toString(); // 获取对象的字符串
alert( a[s] ); // 利用文本下标读取元素的值
a[b()] = 1; // 在下标处调用函数,则返回值为2
alert( a[2] ); // 所以可以使用2来读取该元素值
Javascript 数组下标相关推荐
- HTML数组序号,javascript数组下标从几开始?
数组是javascript中的一个重要组成部分,那么在javascript中数组的下标从几开始?下面本篇文章就来给大家介绍一下,希望对大家有所帮助. javascript数组下标是从0开始的. 那么为 ...
- javascript数组中数字和非数字下标的区别
考完试后闲来无事,想起好多天没写js了,于是打算实践一下最近看到的一些好玩的点子.结果写着写着,发现了一点有趣的小问题.出现问题的代码如下: 1 var array = []; 2 array[&qu ...
- JavaScript 数组拼接打印_JavaScript 数组方法
JavaScript 数组方法 JS 数组 JS 数组排序 JavaScript 数组的力量隐藏在数组方法中. 把数组转换为字符串 JavaScript 方法 toString() 把数组转换为数组值 ...
- 深入浅出 JavaScript 数组 v0.5
有一段时间不更新博客了,今天分享给大家的是一篇关于JS数组的,数组其实比较简单,但是用法非常灵活,在工作学习中应该多学,多用,这样才能领会数组的真谛. 以下知识主要参考<JS 精粹>和&l ...
- JavaScript数组方法大全解
0 前言 本文只讲解标准化方法,而不会讲解实验性方法,如at().groupBy().groupByMap()和toSource(). 数组中的部分方法需要提供区间范围begin/start和end, ...
- splice方法_[7000字]JavaScript数组所有方法基础总结
基础决定一个人的上限,很多时候我们感叹别人在实现一个功能时使用方法的精妙,并且反思,为什么别人想的出来自己却想不出来?我觉得主要是因为对于基础的掌握上有很大的差距.本文总结数组的所有方法的基础使用,希 ...
- javascript数组浅谈1
最近心血来潮要开始玩博客了,刚好也在看数组这块内容,第一篇就只好拿数组开刀了,自己总结的,有什么不对的地方还请批评指正,还有什么没写到的方面也可以提出来我进行完善,谢谢~~ 首先,大概说说数组的基本用 ...
- 基于JavaScript 数组的经典程序应用源码(强烈建议收藏)
文章目录 设计一个数组输入并显示的程序. 数组输入和显示 选择排序 选择排序 排序程序包 排序网页 杨辉三角形 杨辉三角形网页 C语言画一个sin(x)的曲线 螺旋线访问二维数组 JavaScript ...
- js 取得数组下标_数组的介绍及使用
JavaScript 中的数组常用于在单个变量中存储多个值.数组就是一组数据的集合,在内存中表现为一段连续的内存地址(保存在堆内存).创建数组的目的就是为了保存更多的数据. 数组概念和语法 概念:数组 ...
最新文章
- python数据分析常用的算法_萌新向Python数据分析及数据挖掘 第三章 机器学习常用算法 第二节 线性回归算法 (上)理解篇...
- JavaFX技巧8:美丽深层
- Spring:使基于Java的配置更加优雅
- 短连接生成器——让你的url地址长度变短
- Kafka三款监控工具比较
- 萌新的Python练习菜鸟100例(十八)一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
- python image清除_60秒掌握Python内置模块Turtle的用法——绘制漫天雪花
- 一张图11招学会Python网络黑客
- HttpClient4
- 【Java 8 新特性】使用Collectors.toList()方法将Map转化成List的示例
- Mac 没有声音怎么恢复
- word硕士毕业论文不同章节设置不同页眉
- Docker编译安装httpd
- 程序员土豆原创诗四首回顾
- 华为路由器 上网慢 延迟高 解决方法
- php研究所 百科_松下幸之助_PHP研究所
- 2014 年第六届全国大学生数学竞赛江西赛区赣南师范学院获奖名单(数学专业)
- 天玑1300和骁龙870哪个好 天玑1300和高通骁龙870差距
- Python3 教程4
- 经济学中的“破窗理论”
热门文章
- “天猫双11”背后的流量治理技术与标准实践
- Ruby on Rails (3)
- python pyquery中如何解决nbsp_Python-PyQuery 详解
- 最顶级的成长,是拥有“好奇心”
- 怎么看小米发布了MIX Alpha
- 联想y系列 win8 在GPT分区下安装win7
- ORACLE SQL 遍历字符串
- 新一代研发效能架构 water:超越 Serverless 的云研发架构模式
- mysql查询去重后的总数
- paypal创始人_Paypal创始人的一些经历