js Array属性和用法
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属性和用法的更多相关文章
- JS中"属性"的用法
JS的属性和C#有相似之处 ! 使用get和set来进行属性的获取和设置 var obj={ a:"1", get age(){ return obj.a; }, set age ...
- vue.js中的表单radio,select,textarea的v-model属性的用法
只要是表单元素,其值已经不会再用value来定义了,但是placeholder还是可以用来设置默认值. section1--input:type="text" type=" ...
- [转载]js中return的用法
一.返回控制与函数结果,语法为:return 表达式; 语句结束函数执行,返回调用函数,而且把表达式的值作为函数的结果 二.返回控制,无函数结果,语法为:return; 在大多数情况下,为事件处理函 ...
- SSH+DWZ、JQuery-UI ,swfobject.embedSWF属性与用法,IE下日期控件被flash控件挡住
---恢复内容开始--- 最近在做SSH+DWZ(JQuery-UI)项目,在用到图表问题的时候,出现在IE下面,日期控件被flash被挡住而不能选取日期情况,经在网络搜查,现在解决办法如下: 1.首 ...
- 教程-Delphi中Spcomm使用属性及用法详解
Delphi中Spcomm使用属性及用法详解 Delphi是一种具有 功能强大.简便易用和代码执行速度快等优点的可视化快速应用开发工具,它在构架企业信息系统方面发挥着越来越重要的作用,许多程序员愿意选 ...
- 从Chrome源码看JS Array的实现
.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto } .crayon-line spa ...
- js对象属性 通过点(.) 和 方括号([]) 的不同之处
// js对象属性 通过点(.) 和 方括号([]) 的不同之处 // 1.点操作符: 静态的.右侧必须是一个以属性名称命名的简单标识符.属性名用一个标识符来表示.标识符必须直接出现再js ...
- Mybatis 中遍历map 参数中的 list 和 array 属性
原文:https://blog.csdn.net/liudongdong0909/article/details/51048835 问题在项目有中遇到批量删除操作时,需要根据两个属性去删除数据,其中一 ...
- js Array 方法总结
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
随机推荐
- wpa_supplicant移植与使用(转)
下载wpa_supplicant最新版和openssl(编译wpa_supplicant需要openssl的库) 我这里使用的是wpa_supplicant-0.7.3.tar.gz和openssl- ...
- EOFException异常的处理
TOmcat启动后报:IOException while loading persisted sessions: Java.io.EOFException错误 - IOException while ...
- 第01章 开发准备(对最新版的RN进行了升级)1-3+项目结构介绍
- 算法技巧讲解》关于对于递推形DP的前缀和优化
这是在2016在长沙集训的第三天,一位学长讲解了“前缀和优化”这一技巧,并且他这一方法用的很6,个人觉得很有学习的必要. 这一技巧能使线性递推形DP的速度有着飞跃性的提升,从O(N2)优化到O(N)也 ...
- Zend Studio 10汉化方法
选择Help菜单->Install New Software...在Work with框中复制此地址:http://download.eclipse.org/technology/babel/u ...
- Python学习笔记_我的参考网址
Python学习笔记, 下面记录网上搜到的可参考的网址: 一.关于Tkinter 1.Python3中tkinter模块使用方法详解 https://blog.csdn.net/Fighting_Bo ...
- js颜色拾取器
几年前,很难找到一个合适的颜色选择器.正好看到很多不错的JavaScript颜色选择器插件,故而把这些编译汇总.在本文,Web设计师和开发人员 Kevin Liew 选取了11个相应插件,有些会比较复 ...
- 利用osmosis导出osm城市数据
转载(未测试) 方法核心就是利用osmosis的导出指定功能,即是从大范围导出小范围的基本用例. 我们只需要知道我们所需要提取的城市的经纬度范围, 例如广州市的经纬度范围是北纬22.26~23.56度 ...
- logback.xml 实例
<?xml version="1.0" encoding="UTF-8"?> <configuration debug="false ...
- App测试从入门到精通之性能测试
好了,上节我们介绍了关于APP测试的功能测试方面一些细节.这一篇我们来介绍一下,关于APP测试过程中的性能测试参考要点,我们需要思考的如下: 响应时间 1.APP安装卸载的响应时间 2.APP各种功能 ...