js数组(二)
一、位置方法
indexOf()和laseIndexOf()
indexOf是从数组的第0项开始向后查找,没有找到返回-1,要求使用===
var numbers = [1,2,3,4,5,4,3,2,1];
alert(numbers.indexOf(4));//3
lastIndexOf是从数组的最后一项开始向前查找
var numbers = [1,2,3,4,5,4,3,2,1];
alert(numbers.lastIndexOf(4));//5
二、数组的判断方法
如果不支持ES5,一般IE低版本不支持,所以要用 Object.prototype.toString() 判断:
var a = [0, 1, 2];
alert(Object.prototype.toString.call(a) === '[object Array]'); // true
如果支持就用Array.isArray();
var a = [0, 1, 2];
alert(Array.isArray(a)); // true在IE8以下无效
三、迭代方法
1、every()
var numbers = [1,2,3,4,5];
var evertResult = numbers.every(function (item, index, array) {
return (item > 2);
});
alert(evertResult);//false;因为every()是如果函数每一项都返回true那么是true
2、some()
var numbers = [1,2,3,4,5];
var someResult = numbers.some(function (item, index, array) {
return (item > 2);
});
alert(someResult);//true;只要传入函数对数组有一项是true返回为true;
3、filter()
var numbers = [1,2,3,4,5];
var filterResult = numbers.filter(function (item, index, array) {
return (item > 2);
});
alert(filterResult);//3,4,5;指定的函数确定是否在返回的数组中包含的某一项;
4、map()
var numbers = [1,2,3,4,5];
var mapResult = numbers.map(function (item, index, array) {
return item * 2;
});
alert(mapResult);//2,4,6,8,10;指定的函数确定是否在返回的数组中包含的某一项;
5、forEach()
var numbers = [1,2,3,4,5];
numbers.forEach(function (item, index, array) { alert(numbers);//1,2,3,4,5执行五次
alert(item*numbers.length);//5,10,15,20,25(1*5,2*5,3*5,4*5,5*5)
});
四、缩小
var values = [1,2,3,4,5];
var sum = values.reduce(function(prev,cur,index,array) {
return prev + cur;
});
alert(sum);//15
js数组(二)的更多相关文章
- JS数组 二维数组 二维数组的表示 方法一: myarray[ ][ ];方法二:var Myarr = [[0 , 1 , 2 ],[1 , 2 , 3, ]]
二维数组 一维数组,我们看成一组盒子,每个盒子只能放一个内容. 一维数组的表示: myarray[ ] 二维数组,我们看成一组盒子,不过每个盒子里还可以放多个盒子. 二维数组的表示: myarray[ ...
- 前端总结·基础篇·JS(二)数组深拷贝、去重以及字符串反序和数组(Array)
目录 这是<前端总结·基础篇·JS>系列的第二篇,主要总结一下JS数组的使用.技巧以及常用方法. 一.数组使用 1.1 定义数组 1.2 使用数组 1.3 类型检测 二.常用技巧 2.1 ...
- JS的二维数组
今天,记录一下JS的二位数组,并附上例题. 一.二维数组的本质:数组中的元素又是数组. 其实,我们都见过这样的二维数组,只不过没在意罢了,例如: var arr = [[1,2,4,6],[2,4,7 ...
- js数组去重的4种方法
js数组去重,老生长谈,今天对其进行一番归纳,总结出来4种方法 贴入代码前 ,先对浏览器Array对象进行支持indexOf和forEach的polyfill Array.prototype.inde ...
- js数组操作
用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简单的string.split(char).这段时间做的一个项目,用到数组的地方很多, 自以为js高手的自己居然无从下手,一下狠心,我学! ...
- js数组操作【转载】
用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简单的string.split(char).这段时间做的一个项目,用到数组的地方很多,自以为js高手的自己居然无从下手,一下狠心,我学!呵 ...
- JS 数组的基础知识
数组 一.定义 1.数组的文字定义 广义上说,数组是相同类型数据的集合.但是对于强类型语言和弱类型语言来说其特点是不一样的.强类型语言数组和集合有以下特点. 数组强类型语言:1.数组里面只能存放相同数 ...
- js数组的声明与应用
js数组的声明与应用 数组:一种容器,存储批量数据.JavaScript是一种弱类型语言.什么是弱类型,就是变量可以存储多种类型变量的引用不会报错.所以js数组可以存储不同的数据. 一.数组的作用:只 ...
- js数组的操作 【转】
用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简单的string.split(char).这段时间做的一个项目,用到数组的地方很多, 自以为js高手的自己居然无从下手,一下狠心,我学! ...
- js数组的操作及数组与字符串的相互转化
数组与字符串的相互转化 <script type="text/javascript">var obj="new1abcdefg".replace(/ ...
随机推荐
- iOS 将系统文字设置为中文
在.info文件中添加 Localization native development region 键值 string Value值:en
- 设置启动页面-Launch Image
一.添加启动图 二.拖入相应尺寸的图片 图片必须是png格式的.不同机型需要的图片的尺寸: iPhone4.4s-@2x 3.5寸 640*960 iPhone5.5s.5c-@2x 4.0寸 640 ...
- [转载]提升进程权限-OpenProcessToken等函数的用法
GetCurrentProcessID 得到当前进程的ID OpenProcessToken 得到进程的令牌句柄LookupPrivilegeValue 查询进程的权限 AdjustTokenPriv ...
- uva 123 Searching Quickly
Searching Quickly Background Searching and sorting are part of the theory and practice of computer ...
- SpringMVC的web.xml配置注意
web.xml需要放过所有资源文件,这个就看自己的系统中有哪些静态文件.一般的都是.js..css..jpg..png.jpeg等等,但是我还用到一些字体文件资源,所以也要过滤,不然前台会找不到. & ...
- Oracle RETURNING INTO 用法示例 .
The RETURNING INTO clause allows us to return column values for rows affected by DML statements. The ...
- Shader的使用
一.LinearGradient 步骤:①.创建LinearGradient 步骤 ②.将其加入到Paint 步骤一: 构造LinearGradient的参数 public LinearGrad ...
- 从数据库中导出.csv文件
需求: 本次将数据库中的数据导出成.csv文件(office可以打开), //数据的生成,根据你所选中的数据进行生成 //params:$activity_id -> 活动的id //param ...
- undefined reference to `_sbrk', `_write', `_lseek', `_read'
现象: 在用GCC编译嵌入式MCU程序时,由于使用了第三方的库,出现了类似undefined reference to `_sbrk', `_write', `_lseek', `_read'的连接错 ...
- requirejs--源码分析
/*---------------------------------------start-------------------------------*/ req({}); // num == 1 ...