//构造函数创建数组
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. Checker Challenge跳棋的挑战(n皇后问题)

    Description 检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行,每列,每条对角线(包括两条主对角线的所有对角线)上都至多有一个棋子. 列号 0 1 2 3 4 5 6 ...

  2. Android 模拟MotionEvent事件 触发输入法

    Android 模拟MotionEvent事件 触发输入法   android输入法layoutbutton文本编辑encoding 关键词:MotionEvent,模拟按键,模拟点击事件,主动弹出输 ...

  3. Animation组件

    [Animation组件] Animation是Unity3D中老的动画组件,从4.x起已全面被MecAnim中的Animator组建所替代.但是4.x仍保留了Animation组件,所以了解此组件还 ...

  4. 什么是HUD

    [什么是HUD] 游戏HUD的意思: 说直白点就是在屏幕上显示你的游戏相关信息,让玩家可以随时了解那些最重要最直接相关的内容.就是说,像我们玩游戏的时候,显示您的武器耐久度不够了,您的血量不足了等等. ...

  5. C#获取访问者ip和获取本机ip地址

    获取访问者ip: string userIP; // HttpRequest Request = HttpContext.Current.Request; HttpRequest Request = ...

  6. C#支持的编码格式

    转自: http://www.java2s.com/Book/CSharp/0040__Essential-Types/Get_all_supported_encodings.htm using Sy ...

  7. ubuntu opencv的使用

    博客转载自:https://blog.csdn.net/u012816621/article/details/51732932 CMakeLists.txt # cmake needs this li ...

  8. 3.SELECT 语句

    SELECT 语句用于从表中选取数据. 结果被存储在一个结果表中(称为结果集). SQL SELECT 语法 SELECT 列名称 FROM 表名称 以及: SELECT * FROM 表名称 注释: ...

  9. Part4_lesson1---Bootloader设计蓝图

    1.bootloader的作用 2.u-boot是bootloader业界的老大 u-boot分为自主模式和开发模式 3.建立U-boot工程 uboot不能在window下面进行解压,因为在wind ...

  10. 【2008nmj】BP二元分类

    在人的大脑里有数以万计的神经元,它们之间通过神经突触来连接.用以判断. BP神经网络 MATLAB实现: