//构造函数创建数组
var arr1=new Array();
//字面量的方式
 var arr2=[];

  1、Array.isArray(对象)---->判断这个对象是不是数组

 //判断对象是不是数组类型:两种
var arr1=new Array();
//1 instanceof
var obj=[];
console.log(obj instanceof Array);//true //2 使用数组的isArray
console.log(Array.isArray(obj));//true

2、Array.concat(数组,数组,数组,...) 组合一个新的数组

 var arr1=[10,20,30];
var arr2=[40,50,60];
console.log(arr1.concat(arr2));//[10, 20, 30, 40, 50, 60]

3 、Array.every(函数)--是对数组中每一项运行给定函数,如果该函数对每一项返回true,则返回true。every从迭代开始,一旦有一个不符合条件,则不会继续迭代下去。

返回值是布尔类型,函数作为参数使用,函数中有三个参数,第一个参数是元素的值,第二个参数是索引值,第三个参数是原来的数组(没用)、如果这个数组中的每个元素的值都符合条件,最后才返回的是true

 var arr = [1, 2, 3, 4, 5, 6];
console.log(arr.every(function (item, index, array) {
console.log('item=' + item + ',index=' + index + ',array=' + array);
//item是数组的值 index自动循环的值 array 自身的数组(一般没用 只用前面两项参数)
return item > 0;
//这里写函数的判断 只要有一个不是true就停止继续循环 只有全部函数判断结果为true才返回true
}));//true var arr=["小明明lkko","小曹操674","小白白bd","笑眯眯a"];
var flag=arr.every(function (ele,index) {
//数组中的每个元素的长度是不是大于4
return ele.length>4;
});
console.log(flag);//false

4、Array.some()(函数)--是对数组中每一项运行给定函数,如果该函数对任一项返回true,则返回true。some一直在找符合条件的值,一旦找到,则不会继续迭代下去

 var arr = [ 1, 2, 3, 4, 5, 6 ];
console.log( arr.some( function( item, index, array ){
console.log( 'item=' + item + ',index='+index+',array='+array );
//item是数组的值 index自动循环的值 array 自身的数组(一般没用 只用前面两项参数)
return item > 3;
//这里写函数的判断 只要有一个是true就停止继续循环 有一个函数判断结果为true就返回true
})); //true

5、Array.filter(函数);返回的是数组中每一个元素都复合条件的元素,组成了一个新的数组

var arr = [10, 20, 30, 40, 50, 60, 70, 80];
var newArr = arr.filter(function (ele) {//ele---每个元素
return ele > 40;
});
console.log(newArr);//[50, 60, 70, 80] //可以用来去重
var arr = [10, 0, 20, 0, 40, 0, 60, 100];
var newArr = arr.filter(function (ele) {
return ele != 0;
});
console.log(newArr);//[10, 20, 40, 60, 100]

6、Array.push(值);--->把值追加到数组中,加到最后了---返回值也是追加数据之后的数组长度(重点+++)

var arr =[10,20,30];
console.log(arr.push(40));//返回值是 增加后的数组涨肚
console.log(arr);//[10, 20, 30, 40]

7、Array.pop();--->删除数组中最后一个元素,返回值就是删除的这个值(重点+++)

var arr =[10,20,30,40];
console.log(arr.pop());//返回值是删除的值
console.log(arr);//[10, 20, 30]

8、Array.shift();--->删除数组中第一个元素,返回值就是删除的这个值(重点+++)

var arr =[10,20,30,40];
console.log(arr.shift());//返回值是删除的值
console.log(arr);//[ 20, 30,40]

9、Array.unshift();--->向数组的第一个元素前面插入一个新的元素,----返回值是插入后的程度(重点+++)

var arr=[10,20,30,40,50];
var result=arr.unshift(5);
console.log(result);//返回现在的长度
console.log(arr);//[5,10,20,30,40,50]

10、Array.forEach(函数)方法---遍历数组用---相当于for循环

var arr = [10, 20, 30, 40];
arr.forEach(function (ele,index) {
console.log("数组的值:"+ele+'----'+"自迭代的值:"+index);
});
// 数组的值:10----自迭代的值:0
// 数组的值:20----自迭代的值:1
// 数组的值:30----自迭代的值:2
// 数组的值:40----自迭代的值:3

11、Array.map(函数);--->数组中的每个元素都要执行这个函数,把执行后的结果重新的全部的放在一个新的数组中

function f1(a) {
return Math.pow(a, 2);
}
var arr = [1, 2, 3, 4, 5];
console.log(arr.map(f1));//[1, 4, 9, 16, 25]

12、Array.indexOf(元素值);返回的是索引,没有则是-1

var arr=[10,20,30,40];
console.log(arr.indexOf(10)); // 返回对于字符串的索引
console.log(arr.indexOf(50));//找不到就返回-1

13、Array.join("字符串");----数组中每个值与字符串拼接 返回的是一个字符串

var arr=["小白","小黑","小红","小芳","小绿","小苏"];
var str=arr.join("|");
console.log(str);//小白|小黑|小红|小芳|小绿|小苏

14、Array.reverse();----->反转数组

var arr=[10,20,30,40,50];
arr.reverse();//反转
console.log(arr);//[50, 40, 30, 20, 10]

15、Array.sort();---排序的,可能不稳定,如果不稳定,请写MDN中的那个固定的代码(自行MDN)

16、Array.arr.slice(开始的索引,结束的索引);把截取的数组的值放在一个新的数组中,但是不包含结束的索引对应的元素值

var arr=[10,20,30,40,50,60,70,80,90,100];
var newArr= arr.slice(3,7);
console.log(newArr);// [40, 50, 60, 70]

17、Array.splice(开始的位置,要删除的个数,替换的元素的值);一般是用于删除数组中的元素,或者是替换元素,或者是插入元素(重点++)

var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];
myFish.splice(2, 0, 'drum'); // 在索引为2的位置插入'drum'
console.log(myFish);//["angel", "clown", "drum", "mandarin", "sturgeon"] myFish.splice(2, 1); // 从索引为2的位置删除一项(也就是'drum'这一项)
console.log(myFish);//["angel", "clown", "mandarin", "sturgeon"]

js Array属性和用法的更多相关文章

  1. JS中"属性"的用法

    JS的属性和C#有相似之处  ! 使用get和set来进行属性的获取和设置 var obj={ a:"1", get age(){ return obj.a; }, set age ...

  2. vue.js中的表单radio,select,textarea的v-model属性的用法

    只要是表单元素,其值已经不会再用value来定义了,但是placeholder还是可以用来设置默认值. section1--input:type="text" type=" ...

  3. [转载]js中return的用法

    一.返回控制与函数结果,语法为:return 表达式; 语句结束函数执行,返回调用函数,而且把表达式的值作为函数的结果 二.返回控制,无函数结果,语法为:return;  在大多数情况下,为事件处理函 ...

  4. SSH+DWZ、JQuery-UI ,swfobject.embedSWF属性与用法,IE下日期控件被flash控件挡住

    ---恢复内容开始--- 最近在做SSH+DWZ(JQuery-UI)项目,在用到图表问题的时候,出现在IE下面,日期控件被flash被挡住而不能选取日期情况,经在网络搜查,现在解决办法如下: 1.首 ...

  5. 教程-Delphi中Spcomm使用属性及用法详解

    Delphi中Spcomm使用属性及用法详解 Delphi是一种具有 功能强大.简便易用和代码执行速度快等优点的可视化快速应用开发工具,它在构架企业信息系统方面发挥着越来越重要的作用,许多程序员愿意选 ...

  6. 从Chrome源码看JS Array的实现

    .aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto } .crayon-line spa ...

  7. js对象属性 通过点(.) 和 方括号([]) 的不同之处

    //    js对象属性 通过点(.) 和 方括号([]) 的不同之处 //    1.点操作符: 静态的.右侧必须是一个以属性名称命名的简单标识符.属性名用一个标识符来表示.标识符必须直接出现再js ...

  8. Mybatis 中遍历map 参数中的 list 和 array 属性

    原文:https://blog.csdn.net/liudongdong0909/article/details/51048835 问题在项目有中遇到批量删除操作时,需要根据两个属性去删除数据,其中一 ...

  9. js Array 方法总结

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

随机推荐

  1. Web项目开发性能优化解决方案

    web开发性能优化---安全篇 1.ip验证 2.操作日志.安全日志.登录日志 3.SQL注入校验 4.权限管理 5.验证规范(前端.后端.数据库约束) 2014-10-29 08:04   2773 ...

  2. 学习神器!本机安装虚拟机,并安装Linux系统,并部署整套web系统手册(包含自动部署应用脚本,JDK,tomcat,TortoiseSVN,Mysql,maven等软件)

    1.   引言 编写目的 本文档的编写目的主要是在Linux系统上部署mis_v3员工管理系统,方便测试,并为以后开发人员进行项目部署提供参考 准备工作 软件部分 软件项 版本 备注 Mysql 5. ...

  3. Android selector中的item的顺序

    在selector中,要将默认状态的item放在最后面,因为一旦前面的item满足匹配条件,后面的item就不会去匹配.因此,把默认状态的item放在前面的话,后面的item没有执行的机会

  4. resolve或reject之后还需要return吗

    答案: 需要 今日碰到一个问题, 是我的同事发现的,如果不说的话可能一直没有注意到 这个代码 在reject 后还会执行, 但是谁也没有注意到, 但是不会报错, 因为当一个promise是resolv ...

  5. ubuntu下不用eclipse开发cocos2d-x(命令行)

    之前在ubuntu下通过eclipse搭建开发cocos2d-x的环境,但是由于eclipse界面在ubuntu显得很丑,在里面写代码,完全没有感觉,后来我转到了win7上通过vs2010和eclip ...

  6. 使用mail架包发送邮件javax.mail.AuthenticationFailedException: failed to connect at javax.mail.Service.connec

    这个错误是因为连接不上邮箱服务器导致的,可能有以下几个原因(以网易邮箱为例) 1.当使用第三方登录邮箱时需要有邮箱的授权码,且要开启POP3/SMTP/IMAP:服务 2.在代码中要调用网易邮箱的密码 ...

  7. 数据库 MySQL 之 表操作、存储引擎

    数据库 MySQL 之 表操作.存储引擎 浏览目录 创建(复制) 删除 修改 查询 存储引擎介绍 一.创建(复制) 1.语法: 1 2 3 4 5 CREATE TABLE 表名(     字段名1 ...

  8. 符合mvc思维的分页思想

    .Model Student.cs namespace WebApplication14.Models { public class Student { public int Id { get; se ...

  9. Entity Framework 6.0 Tutorials(2):Async query and Save

    Async query and Save: You can take advantage of asynchronous execution of .Net 4.5 with Entity Frame ...

  10. Ajax——三种数据传输格式

    一.HTML HTML由一些普通文本组成.如果服务器通过XMLHTTPRequest发送HTML,文本将存储在responseText属性中. 从服务器端发送的HTML的代码在浏览器端不需要用Java ...