一、数组的声明
方法一:【构造函数形式声明】

    var array = new Array();    //[]
var array = new Array(10); //数组长度:array.length = 10;
var array = new Array('tom',20,null); //['tom',20,null]

方法二:【数组字面量形式创建】

    var array = [];    //[]
var array = [1,2,3,'tom']; //[1,2,3,'tom']

访问数组下标越界的元素为undefined【数组中元素不存在】。

二、数组使用及序列化
1.改变数组的长度及向数组中添加数据
eg:

    var arr = [1,2,3,4]; //下标为:0,1,2,3
console.log(arr.length); //
arr[6] = ['hello']; //[1,2,3,4,,,'hello'] //中间数据为undefined

2.typeof、instanceof、isArray()的相关测试
typeof:查看arr数组的数据类型
instanceof:判断某数组是否属于某原型对象
isArray():判断某变量是否是数组
eg:

    var arr = [1,2,3,4];
console.log(typeof arr); //object
console.log(arr instanceof Array); //true
console.log(arr instanceof Object); //true
console.log(Array.isArray(arr)); //true function test(){
console.log(Array.isArray(arguments)); //false 【arguments不是数组,它是一个类数组对象】
}
test();

3.数组的序列化【将数组转化为字符串】
a、toString()方法: 【将数组转化为相应的字符串】

    console.log(arr.toString()); //1,2,3,4

b、join() 方法:【将数组转化为字符串并按照携带的参数串对数组中元素进行分割连接】

    console.log(arr.join());  //1,2,3,4【不携带参数默认以逗号分割】
console.log(arr.join("&")); //1&2&3&4

c、JSON.stringify() 方法:【将数组转化为相应的JSON字符串】

    console.log(JSON.stringify(arr)); //[1,2,3,4]【字符串类型】

三、数组的一些相关方法:【方法详细信息请查看下一篇文章】
⑴、数组的栈,队列方法【调用这些方法原数组会发生改变】
1.栈 LIFO (Last-In-First-Out)
a、push() 可接受任意类型的参数,将它们逐个添加到数组的末尾。【返回数组的长度】
b、pop() 从数组的末尾移除最后一项,减少数组的length值。【返回移除的项】

2.队列 FIFO (First-In-First-Out)
a、shift() 移除数组中的第一个项,同时将数组的长度减一。【返回移除的项】
b、unshift() 在数组的前端添加任意个项。【返回数组的长度】

⑵、数组的排序方法【reverse()方法、sort()方法】(原数组发生改变);
1、reverse()方法:【对数组项进行反转】

2、sort()方法【数组排序,返回排序后的数组】

⑶、截取方法:
1、数组拼接:concat()方法 【不改变原数组】

2、数组切割:slice()方法 【不改变原数组】

3、splice() 【改变原数组】(数组的删除、插入、修改)

⑷、索引方法
1、indexOf() 【指定数组索引位置正向查找元素】

2、lastIndexOf() 【指定数组索引位置反向查找元素】

⑸、迭代方法
参数: 每一项上运行的函数,运行该函数的作用域对象(可选)
1、every()
对数组中的每一运行给定的函数,如果该函数对每一项都返回true,则该函数返回true

2、some()
对数组中的每一运行给定的函数,如果该函数对任一项都返回true,则返回true

3、filter()
对数组中的每一运行给定的函数,会返回满足该函数的项组成的数组

4、map()
对数组中的每一元素运行给定的函数,返回每次函数调用的结果组成的数组【即函数返回值组成的数组】

5、forEach()
对数组中的每一元素运行给定的函数,没有返回值,常用来遍历数组

js数组(五)的更多相关文章

  1. js数组去重五种方法

    今天来聊一聊JS数组去重的一些方法,包括一些网上看到的和自己总结的,总共5种方法(ES5). 第一种:遍历数组法 这种方法最简单最直观,也最容易理解,代码如下: var arr = [2, 8, 5, ...

  2. JS数组+JS循环题

    先看JS循环作业题: 一.一张纸的厚度是0.0001米,将纸对折,对折多少次厚度超过珠峰高度8848米 <script type="text/javascript"> ...

  3. 关于JS数组的定义

    关于js数组的定义的一些内容: 数组是一个对象 只用一个变量,储存多个同类型的信息 数组--连续的储存空间 数组的下标从0开始 ps:定义一个数组可以看作是一个旅馆.里面有很多小房子. 1.创建数组- ...

  4. js数组操作记录

    一 .splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目. arrayObject.splice(index,howmany,item1,.....,itemX) 参数 描述 in ...

  5. js数组和数组去重的几种简单的方法

    http://blog.csdn.net/liangklfang/article/details/49300417 1.证明一个对象是数组的方法. 方法(1) [].constructor === A ...

  6. js数组相关知识集合

    一.js数组快速排序 <script type="text/javascript"> var arr = [1, 2, 3, 54, 22, 1, 2, 3]; fun ...

  7. JS数组去重的几种常见方法

    JS数组去重的几种常见方法 一.简单的去重方法 // 最简单数组去重法 /* * 新建一新数组,遍历传入数组,值不在新数组就push进该新数组中 * IE8以下不支持数组的indexOf方法 * */ ...

  8. js数组去重的方法(转)

    JS数组去重的几种常见方法 一.简单的去重方法 // 最简单数组去重法 /* * 新建一新数组,遍历传入数组,值不在新数组就push进该新数组中 * IE8以下不支持数组的indexOf方法 * */ ...

  9. JS数组与PHP数组的对比

    一.分类与创建 1:JS的数组都是索引数组,数组是一种特殊的对象,创建数组的方式有两种 //方式一 var arr1 = ['关羽', '张飞', '赵云', '马超', '黄忠']; //方式二 v ...

随机推荐

  1. ChannelEventRunnable handle RECEIVED operation error, channel is NettyChannel解决方法

    [] 2019-11-23 16:17:40 [3673645] [c.a.d.r.t.d.ChannelEventRunnable]-[WARN] DubboServerHandler-10.20. ...

  2. Vue 项目中断点没有跳转到指定源码的问题

    将配置中 devtool 改为以下即可. devtool: 'source-map' 如果是在 vue-cli 2.x ,那么就在 webpack.dev.config.js 中 如果是 vue-cl ...

  3. 阻止Bootstrap 模态框点击背景空白处自动关闭

    问题描述 模态框点击空白处,会自动关闭,怎么阻止关闭事件呢? 解决方法 在HTML页面中编写模态框时,在div初始化时添加属性 aria-hidden=”true” data-backdrop=”st ...

  4. phpmyadmin上在某数据库里创建函数

    改那个PHP项目加了个功能,本地MYSQL里添加了一个函数了,现在要转到服务器上,然后服务器上的MYSQL只能通过PHPMYADMIN网页操作的,在网页上SQL里输入创建函数的语句, 结果报错了:th ...

  5. package.json详解以及package-lock.json的作用

    一.创建 package.json输入如下命令之后,会要求填写基本的配置信息,这里,我们选择一路回车即可,待生成 package.json 文件之后,再来配置. npm init 二.配置 packa ...

  6. 读Secrets of the JavaScript Ninja(一)函数

    理解JavaScript为什么应该作为函数式 在JavaScript中,函数是程序执行过程中的主要模块单元 函数是第一类对象 通过字面量创建 function ninjaFunction(){} 赋值 ...

  7. 晶体管放大电路与Multisim仿真学习笔记

    前言 开始写点博客记录学习的点滴,第一篇就写基本的共射极放大电路吧. 很多教材都是偏重理论,而铃木雅臣著作的<晶体管电路设计>是一本很实用的书籍,个人十分推荐! 下面开始我的模电重温之旅吧 ...

  8. Linux字符设备驱动基本结构

    1.Linux字符设备驱动的基本结构 Linux系统下具有三种设备,分别是字符设备.块设备和网络设备,Linux下的字符设备是指只能一个字节一个字节读写的设备,不能随机读取设备内存中某一数据,读取数据 ...

  9. 使用Prometheus监控bind9的DNS服务

    首先编译bind_exporter,编译方式参见bind_exporter 创建一个systemd配置文件来运行bind_exporter vi /etc/systemd/system/bind_ex ...

  10. python笔记:删除列表元素和根据索引查找元素

    查找元素 #查找元素 >>> member=['张三','李四','王五','张麻子'] >>> member[0] '张三' #交换元素 >>> ...