JS中数组的介绍
一、数组:
一组数据的集合;
二、JS中数组的特点:
1、数组定义时无需指定数据类型;
2、数组定义时可以无需指定数组长度;
3、数组可以存储任何类型的数据;
4、一般是相同的数据类型;
三、数组的创建方式:
var arr=[值1,值2,值3]; //字面量定义 var arr = new Array (值1,值2,值3); //构造函数创建 var array =new Array(size); //创建数组并指定长度
四、数组的操作:
数组名.方法
1、push() 向数组末尾添加新的数组项,返回值新数组的长度,原数组改变;
2、pop() 删除数组最后一项,没有参数,返回值删除项,原数组改变;
3、unshift() 向数组开头位置添加,返回值是新数组的长度,原数组改变;
4、shift() 删除数组第一项,没有参数,返回值删除项,原数组改变;
5、splice(n,m) 从索引n开始,删除m个,返回值以数组的形式返回删除项(没有m的话,删除到最后);
splice(0) 原数组清空,返回一个和原来一样的新数组;
splice(n,m,z) 从索引n开始,删除m个,把z添加到删除的位置;
6、slice(n,m) 从索引n开始,查找到索引m处,不包含m,将查找到的以新数组返回,原数组不变;
7、concat 数组的拼接,不改变数组,返回最终连接好的新数组;
8、数组换为字符串:不改变原数组;
五、数组的遍历:
1、for :不能遍历对象;
2、for.....in:
没有循环条件;
自动取出下标;
下标默认从0开始,最大下标为数组长度-1;
下标的类型为string
六、分类:
整数数组、字符串数组、对象数组、二维数组
七、数组排序:
1、冒泡排序(相邻的两个数比较,大数下沉,小数上浮):
function mySort(arr){
for(var i=0;i<arr.length-1;i++){
for(var j=0;j<arr.length-1;j++){
if(arr[i]>arr[j+1]){
var t=arr[i];
arr[j]=arr[j+1];
arr[j+1] = t;
}
}
}
return arr;
}
2、选择排序:
每一轮用数组中的第n个数和后面的数依次比较,如果arr[n]大于后面的数,就交换 n从下标为0开始 一直到arr.length-1;
3、sort 方法排序:
按照字符编码的顺序进行排序:
八、数组新增的方法:
1、indexOf():判断一个数在某个数组中是否存在,如果存在返回这个数在数组的位置,不存在返回-1;
2、forEach() 遍历数组 没有返回值;
3、map() 映射 遍历数组 --操作数组--返回数组
4、filter 过滤 按照某个条件过滤,返回过滤后的数组;
5、reduce()归并 返回值是最后一次操作的结果;
6、some()返回一个boolean,判断是否有元素符合func条件,如果有一个元素符合,则循环终止;
7、every() 返回一个boolean,判断每个元素是否符合func条件,有一个元素不满足,则循环终止,返回false。
JS中数组的介绍的更多相关文章
- js中数组方法大全
js数组方法大全 一:前言 我们在学到js中数组的时候,我们会接触到js中数组的一些方法,这些方法对我们来说,可以很遍历的达到我们想要的结果,但是因为方法比较多,有些方法也不常用,可能会过一段时间就会 ...
- js中数组去重方法及性能对比
js中数组的 数组去重 常用的数组去重方法以及效率分析: 首先我们先构建一个数组,主要是用于进行去重实验,我们主要实验的量级为1000,10000,100000,500000.具体的生成数组的方法如下 ...
- js中数组去重的几种方法
js中数组去重的几种方法 1.遍历数组,一一比较,比较到相同的就删除后面的 function unique(arr){ ...
- JavaScript -- 时光流逝(二):js中数组的方法
JavaScript -- 知识点回顾篇(二):js中数组的方法 1. 数组 (1)定义数组,数组赋值 <script type="text/javascript"> ...
- php和js中数组的总结
php中数组的表示方法:array()或者[] js中数组的表示方法:new array()或者[] 一.php中初始化命名数组 在PHP中声明数组的方式主要有两种:一是应用array()函数声明 ...
- js中数组增删查改unshift、push、pop、shift、slice、indexOf、concat、join
js中数组增删查改unshift.push.pop.shift.slice.indexOf.concat.join
- js中数组如何使用
js中数组如何使用 一.总结 一句话总结:new Array()和[]两种方法都可以创建数组. 二.js中创建数组,并往数组里添加元素 数组的创建 var arrayObj = new Array() ...
- js中数组扁平化处理
- JS 中数组的排序和去重
在 PHP 中,数组有很多排序方法,不过其他语言的数组中大概是不会像 JS 的数组一样,包罗万象,啥都通吃的.所以 JS 的数组排序情况就略多一些了. 简单粗暴的排序: 赤果果的sort: var ...
随机推荐
- 看 迪杰斯特拉(Dijsktra)算法体会
迪杰斯特拉 看啊哈算法中迪杰斯特拉算法体会: 算法思路 : 1.先找到源头到其他点的最短路: 2.以最短路作为中转点进行比较,用一个dis数组保存源头到他的最优距离 3.用循环进行最优筛选: #inc ...
- Python: PS 滤镜--旋转模糊
本文用 Python 实现 PS 滤镜中的旋转模糊,具体的算法原理和效果可以参考之前的博客: http://blog.csdn.net/matrix_space/article/details/392 ...
- Swift初见
Swift基本类型 Swift的类型是在C和OC的基础上发展而来的,Int是整型:Double和Float是浮点型:Bool是布尔型:String是字符串.类似OC,Swift也提出了三个集合类型:A ...
- MSTAR SERVICE结构
程序结构: 1.主线程的构建 appMain.c/appMain_Create(): 2.主线程服务构建 _appMain_Task() 清空服务: memset(_appMain.appList, ...
- 写出高效优美的单片机C语言代码
程序能跑起来并不见得你的代码就是很好的c代码了,衡量代码的好坏应该从以下几个方面来看 1,代码稳定,没有隐患. 2,执行效率高. 3,可读性高. 4,便于移植. 下面发一些我在网上看到的技巧和自己的一 ...
- 网络应用软件结构-----CS与BS结构(网络基本知识小结)
1.网络的大致结构 2.网络编程 通过直接或间接地使用网络通讯的协议实现计算机与计算机之间的通讯.在TCP/IP协议层主要麦网络主机的定位,数据传输的路由,由IP地址可以唯一地确定Internet上的 ...
- Windows 下有什么软件能够极大地提高工作效率
Windows 下有什么软件能够极大地提高工作效率?修改 可以推荐一些好的应用或者有趣的程序,能提升工作效率或者能让人眼前一亮的.修改 举报1 条评论 分享 • 邀请回答 按票数排序按时间排序 2 ...
- CodeForces 1091G. New Year and the Factorisation Collaboration
题目简述:若你获得“超能力”:固定$n$,对任意$a$,可以快速求出$x \in [0, n)$(若存在),使得$x^2 \equiv a \pmod n$,若存在多个$x$满足条件,则返回其中一个( ...
- 性能测试之Jmeter学习(二)
一.Jmeter的基本操作 1.添加|移除测试元件 2.加载和保存测试元件 3.配置测试对中的测试元件 4.保存测试计划 5.运行测试计划 6.终止测试 7.错误报告 二.Jmeter体系结构 注释: ...
- 生产环境下Flask项目目录构建
接触Flask已经有大半年了,本篇博客主要来探讨如何规范化生产环境下Flask的项目目录结构.虽然目录结构见仁见智,个人有个人的看法和习惯,但总的来说,经过很多人的实践和总结,还是有很多共同的意见和想 ...