几种javascript数组定义的方法详解

关于数组定义的方法大家了解多少?一般来说分为隐式创建、直接实例化、创建数组并指定长度、后来为了方便直接使用json格式定义数组,本文就和大家分享几种javascript数组定义的方法详解,希望能帮助到大家。

1、什么是数组

数组就是一组数据的集合
其表现形式就是内存中的一段连续的内存地址
数组名称其实就是连续内存地址的首地址

2、关于js中的数组特点

数组定义时无需指定数据类型
数组定义时可以无需指定数组长度
数组可以存储任何数据类型的数据(比如说一个元素保存整型,一个元素保存字符串型,这个在JS中是可以的)

立即学习“Java免费学习笔记(深入)”;

创建数组的语法:

var arr=[值1,值2,值3];                     //隐式创建

var arr=new Array(值1,值2,值3);      //直接实例化

var array=new Array(size);           //创建数组并指定长度

//方法一var arr1 = [1,3,5,7,9];document.write(arr1[2] + '
'); //方法二var arr2 = new Array(2,4,6,8,10);document.write(arr2[3] + '
'); //方法三var arr3 = new Array(3);//固定数组长度为3arr3[0] = 1;arr3[1] = 2;arr3[2] = 3;document.write(arr3[2] + '
');

登录后复制

JS中符号含义:

()表示函数执行
[]表示语法模拟,表示模拟Array类的实例(=new Array())
{}表示语法模拟,表示模拟Object类的实例(=new Object())
//表示语法模拟(正则对象),表示模拟RegExp类的实例(=new RegExp())

3、关于数组长度

数组对象.length

在js中,每一个数组对象都可以调用length属性,它表示数组对象下共有几个数组元素

示例:

var row = ['zhangsan','lisi','wangwu'];doucument.write('共有'+row.length+'个人
');var length = row.length;//对数组进行遍历for (var i=0;i');}

登录后复制

4、for…in语句

在js中,数组不是数据类型,数组的数据类型其实就是对象

Js中的For…..in语句可以实现对一个对象的所有属性的遍历

也可以使用for…in语句实现对一个数组的所有元素的遍历

语法:

for( var i in array ){

}

原理:数组中有几个元素,for..in语句就循环执行多少次

每次执行时,将当前数组元素的下标存放到变量i中

var row = ['zhangsan','lisi','wangwu','xiaoqiang'];for (var i in row){ document.write(i + ':' + row[i] + '
');}

登录后复制

结果:

  0:zhangsan
  1:lisi
  2:wangwu
  3:xiaoqiang

5、文本下标

格式:

arr[‘key’] = value;

在js中,文本下标的数组元素,不计入数组长度

以文本下标形式添加到数组,实际是以属性形式添加到数组对象中的

var arr = [1,2,3];arr['first'] = 'zhangsan';arr['second'] = 'lisi';document.write(arr.length + '
');document.write(arr.first + '
');document.write(arr.second + '
');

登录后复制

结果:

  3
  zhangsan
  lisi

遍历带有文本下标的数组:

var arr = [1,2,3];arr['first'] = 'zhangsan';arr['second'] = 'lisi';for(var i in arr){ document.write(i + ':' + arr[i] + '
');}

登录后复制

结果:

  0:1
  1:2
  2:3
  first:zhangsan
  second:lisi

6、多维数组

var arr = [  [10,'zhangsan','male'],  [11,'lisi','female'],  [12,'wangwu','male'] ];for (var i in arr){ for(var j in arr[i]){  document.write(arr[i][j]); } document.write('
');}

登录后复制

下面是脚本之家的补充

1.先定义再赋值

var myArray1 = new Array(); //不定义元素个数  myArray1[0] = "脚";  myArray1[1] = "本";  myArray1[2] = "之"; myArray1[3] = "家";var myArray2 = new Array(4); //定义元素的个数  myArray1[0] = "脚";  myArray1[1] = "本";  myArray1[2] = "之"; myArray1[3] = "家";

登录后复制

 2.定义数组时同时赋值

var myArray3 = new Array(“脚”,”本”,”之”,”家”);

//你需要在数组内指定数值或者逻辑值,那么变量类型应该是数值变量或者布尔变量,而不是字符变量

3、json格式的定义

var myArray4 = [   {"num":"1001","name":"jack","age":16},   {"num":"1002","name":"Mary","age":17},   {"num":"1003","name":"Tom","age":19}   ];//注意中括号和大括号的位置

登录后复制

不懂的同学可以查看这篇文章:http://www.jb51.net/article/20688.htm

Json定义用法和数组的区别

Json:是在javascript用来存数据的一种方法。
Json形式: var Json={a:1 , b:2 , c:3};
数组形式:var arr=[1,2,3];

Json个数组的区别:

1、Json的下标是字符串,如调用第一个数据时用:Json.a 。 数组的下标是数字如 arr[0]
2、Json没有length,数组有lengt

用Json来存数据,如果遇到需要循环需要用 for(元素变量 in 变量名){};因为Json没有length所以要用for in循环,for in循环可以用于Json和数组

for(i in Json){
  语句
};

什么时候用for循环,什么时候用for in循环?
数组:用for循环 for(i=0,iJson:用for in循环 for(i in Json){};

 4. 注意

   · 数组只有数组长度一个属性
   · 如果没有给数组赋值得到的是undefined,打印是”“
   · 数组长度不够可以自动扩充,不存在越界的问题

您可能感兴趣的文章:

js中的数组Array定义与sort方法使用示例

javascript中数组的多种定义方法和常用函数简介

javascript中数组的定义及使用实例

JavaScript自定义数组排序方法

JavaScript jQuery 中定义数组与操作及jquery数组操作

JavaScript数组的定义及数字操作技巧

javascript 数组的定义和数组的长度

javascript如何定义对象数组

JavaScript定义数组的三种方法(new Array(),new Array(”x”,”y”)

以上就是几种javascript数组定义的方法详解的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2788625.html

(0)
上一篇 2025年3月8日 18:29:05
下一篇 2025年3月7日 17:00:06

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • node.js中http模块和url模块简介

    本文主要给大家简单介绍了关于node.js中的http模块和url模块,文中通过示例代码介绍的非常详细,对大家学习或者使用node.js具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习,希望能帮助到大家。 前言 本文主要给大家介绍…

    2025年3月8日 编程技术
    200
  • vuejs使用递归组件实现树形目录

    本文主要介绍了vuejs使用递归组件实现树形目录的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考,希望能帮助到大家。 首先实现效果如下,觉得菜单还是比较nice的是吧: 这边数据调用的是数据库的数据的,需要数据库进行数据的构造,这…

    2025年3月8日
    200
  • 两种js实现轮播图的方式

    本文主要为大家详细介绍了js实现轮播图的两种方式,一是构造函数、另一种是面向对象方式方式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到大家。 1、构造函数 nbsp;html>        *{ margin:0;…

    编程技术 2025年3月8日
    200
  • JS实现div点击跳转到另一页面实例代码

    本文主要介绍了js动态添加的p点击跳转到另一页面实现代码,需要的朋友可以参考下,希望能帮助到大家。  p调用函数跳转: var obj = document.getElementById(‘id’);obj.onclick=function…

    编程技术 2025年3月8日
    200
  • vuejs使用$emit和$on进行组件间的传值

    $emit和$on可以实现组件之间的传值,我们知道父组件传值给子组件使用props,但是不允许子组件传值给父组件,这时候使用这个就可以实现了。本文主要介绍了vuejs使用$emit和$on进行组件之间的传值的示例,具有一定的参考价值,有兴趣…

    2025年3月8日
    200
  • JS数据访问对象模式详解

    本文主要为大家带来一篇js设计模式之数据访问对象模式的实例讲解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。 问题 大部分网站会将一些数据(如:用户Token)存储在前端,用来实现页面间的…

    编程技术 2025年3月8日
    200
  • D3.js创建物流地图实例分享

    本文主要介绍了使用d3.js创建物流地图的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。 示例图 制作思路 需要绘制一张中国地图,做为背景。 需要主要城市的经纬坐标,以绘制路张起点和…

    2025年3月8日
    200
  • javascript定时器实现进度条功能

    本文主要介绍javascript基于定时器实现进度条功能,简单分析了javascript定时器的功能、使用方法并给出了基于定时器实现的进度条功能实例,需要的朋友可以参考下,希望能帮助到大家。 Javascript 中的定时器 window度…

    2025年3月8日
    200
  • JS上传大文件显示进度条实现方法

    本文主要为大家详细介绍js原生上传大文件显示进度条,php上传文件关键代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到大家。 在php.ini修改需要的大小: upload_max_filesize = 8M    po…

    2025年3月8日
    200
  • JavaScript随机数生成器实现方法

    本文主要为大家详细介绍了javascript实现随机数生成器,生成不重复的随机数,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到大家。 1.实验前准备: Math函数的理解 数组方法的理解 2.实验操作: 立即学习“Java…

    2025年3月8日
    200

发表回复

登录后才能评论