JS 数组的基本使用和案例
知识点汇总: 数组:就是一组数据的集合,存储在单个变量的方式
自变量创建数组
var 数组名字 = ['a','b'] // []里面的是数据的元素,可为任意字符类型
利用new创建数组
var 数组名字= new Array(); //创建一个空数组 取用数组元素,可以利用器数组下标,下标是从第一个元素为第0个下标(索引),依次类推;如下
alert(数组名字[2])
增加数组:数组名字[指定下标]=值
修改数组:数组名字[指定下标]=值
不能直接给数组名赋值,不然将会覆盖数组的数据 数组:就是一组数据的集合,存储在单个变量的方式
自变量创建数组
var 数组名字 = ['a','b'] // []里面的是数据的元素,可为任意字符类型
利用new创建数组
var 数组名字= new Array(); //创建一个空数组 取用数组元素,可以利用器数组下标,下标是从第一个元素为第0个下标(索引),依次类推;如下
alert(数组名字[2])
增加数组:数组名字[指定下标]=值
修改数组:数组名字[指定下标]=值
不能直接给数组名赋值,不然将会覆盖数组的数据
1.增加删除数组元素的方法
(1).push() 在我们数组的末尾 增加一个或者多个数组元素
注意:(1)和(2) 增加数组元素,有一个总共的数组元素的返回值
例如:var arr=[1,2,3]
arr.push(4,'pink')
console.log(arr)
(2).unshift 在数组的开头增加一个或者多个数组元素
arr.shift('red','pink')
console.log(arr) 2.删除数组的元素
(3).pop() 删除数组的最后一个元素
例如:arr.pop()
console.log(arr)
(4).shift删除数组的第一个元素
例如:arr.shift()
console.log(arr)
注意:(3)和(4)也有返回值,返回值是已经被删除元素值 3.数组排序方法
(1).数组排序
var arr=[1,2,3,4,5]
arr.reverse() //反转组数,也就是5,4,3,2,1
(2).数组排序(冒泡排序)
arr.sort() //如果是多位数会出现问题,他的排序是先根据个位数排序把最小的个位数的十位数放在前面
console.log(arr1)
固定的解决此问题的办法格式
arr.sort(function(a,b){
return a-b;// 是显示升序的效果,反转就返回b-a降序效果
}) 1.返回数组的索引方法(只返回第一个满足条件的索引号)
var arr=['red','green','pink','blue']
console.log(arr.indexOf('blue')) //首个blue的索引号
console.log(arr.lastIndexOf('blue')) // 最后一个blue的索引号 4.数组去重,利用indexOf()有就赋值给新的数组,没有indexOf会返回-1的错误代码
过程:取用就数组的中的值用indexOf去遍历,如果返回-1说明,新的数组没有旧数组的值可以追加push
var arr=['red','green','pink','blue','red']
var new_arr=[]
for(var i=0;i<=arr.length-1;i++){
if (new_arr.indexOf(arr[i])==-1){
new_arr.push(arr[i]) }
}
console.log(new_arr) 5.数组转字符串:
(1).toString() 将数组转换为字符串
var arr=[1,2,3]
console.log(arr.tostring()) // 1,2,3
(2).join 将数组转换成为字符串(括号里可以增加间隔字符串的符号,比如-)
console.log(arr.join('-')) 6.将字符串转为数组(赋值只能是一个,或者用数组代替)
var myData = 'Manchester,London,Liverpool,Birmingham,Leeds,Carlisle';
var myArray = myData.split(',');
console.log(myArray); 7.数组中数值操作
splice() 方法通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容。此方法会改变原数组
var myFish = ['angel', 'clown', 'drum', 'mandarin', 'sturgeon'];
var removed = myFish.splice(3, 1); //删除从第三个索引删除一个值,也就是mandarin
var removed = myFish.splice(3, 1,'text' ,'pink'); //替换,从第三个索引的值替换一个值、多余在text后面追加,把mandarin替换成text,
var removed= myFish.splice(2) //从第二个元素到结束删除所有 8.concat() 方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。
数组名1.concat(要合并的数组1,数组2); //以数组1为准追加数组2,如果重复追加也是可以的
例如: ( 1). var num1=[1,2,2,11,1],
num2=[1222,"pok",'red'],
mum3=['red','pink','blue']
var abc=num1.concat(num1,num2,mum3) (2). var num1 = [[1]];
var num2 = [2, [3]];
var num3=[5,[6]];
var nums = num1.concat(num2);
console.log(nums);
// results is [[1], 2, [3]]
JS 数组的基本使用和案例的更多相关文章
- javascript数组&省市联动分别用js数组和JSON实现
1.定义数组的三种方式: **数组可以存放不同的数据类型 第一种: var arr=[1,2,3]; var arr=[1,"2",true]; 第二种: 使用内置对象 ...
- js数组去重,id相同对某值相加合并
js数组去重,id相同对某值相加合并 案例1: 假设需要处理的数组结构. let arr =[ {id:'1', value:10}, {id:'1', value:20}, {id:'2', val ...
- 小兔JS教程(四)-- 彻底攻略JS数组
在开始本章之前,先给出上一节的答案,参考答案地址: http://www.xiaotublog.com/demo.html?path=homework/03/index2 1.JS数组的三大特性 在J ...
- js数组学习整理
原文地址:js数组学习整理 常用的js数组操作方法及原理 1.声明数组的方式 var colors = new Array();//空的数组 var colors = new Array(3); // ...
- bootstrap中popover.js(弹出框)使用总结+案例
bootstrap中popover.js(弹出框)使用总结+案例 *转载请注明出处: 作者:willingtolove: http://www.cnblogs.com/willingtolove/p/ ...
- 转→js数组遍历 千万不要使用for...in...
看到一篇内容还不错,但是排版实在糟糕, 逼死强迫症患者啊,直接拉下去找原文连接,找到了,但是已经消失了···500错误... 第一次因为实在看不下去一篇博客的排版, 为了排版而转载... 转载地址:h ...
- js数组操作大全
原文(http://www.cnblogs.com/webhotel/archive/2010/12/21/1912732.html) 用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简 ...
- js数组去重的4种方法
js数组去重,老生长谈,今天对其进行一番归纳,总结出来4种方法 贴入代码前 ,先对浏览器Array对象进行支持indexOf和forEach的polyfill Array.prototype.inde ...
- js 数组处理函数
本文转载自有有<js 数组处理函数> concat 将参数列表连接到原数组后面形成一个新的数组并返回,原有数组不受影响. var arr = ["a","b& ...
随机推荐
- shell脚本实现openss自建CA和证书申请
#!/bin/bash # #******************************************************************** #Author: Ma Xue ...
- 基于war的Spring Boot工程
一.简介 前面创建的Spring Boot工程最终被打为了Jar包,是以可执行文件的形式出现的,其使用了Spring Boot内嵌的Tomcat作为Web服务器来运行web应用的.新版Dubbo的监控 ...
- 【Python】【Module】re
python中re模块提供了正则表达式相关操作 字符: . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字 \s 匹配任意的空白符 \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配 ...
- matplotlib subplot 多图合一
1:第一种方法 # method1: subplot2grid ################# ''' 第一个参数(3, 3) 是把图分成3行3列 第二个参数是位置 (0, 0)表示从0行0列开始 ...
- jstl中的if标签
<%@ page import="java.util.ArrayList" %><%@ page import="java.util.List" ...
- 阿里巴巴Java开发手册摘要(二)
MySql数据库 一建表规约 1.表达是与否概念的字段,必须使用is_xxx的命名方式,数据类型是unsigned tinyint(1:是,0否) 正例:表达逻辑删除的字段名is_deleted,1表 ...
- JavaXML解析的四种方法(连载)
1. xml简介 XML:指可扩展标记语言, Extensible Markup Language:类似HTML.XML的设计宗旨是传输数据,而非显示数据. 一个xml文档实例: 1 <?xml ...
- [BUUCTF]PWN——axb_2019_fmt32
axb_2019_fmt32 附件 步骤: 例行检查,32位程序,开启了nx保护 本地试运行一下程序,看看大概的情况 32位ida载入 alarm(),是闹钟函数,主要功能是设置信号传送闹钟,即用来设 ...
- Excel的内置功能,其实真的是够用了。(学习观)
很多人问我,学好Excel是不是要背好多函数,是不是要会写VBA代码? 我说,那得看你能放多少时间和精力在Excel上. Excel的内置功能,其实真的是够用了:觉得不够用的,花几十块钱买个插件,也差 ...
- 在【自定义列】中编辑简单运算公式(Power Query 之 M 语言)
数据源: "品名"."数量"."单价"三列 目标: 计算销售单价(单价*1.2) 解决方案: 在[自定义列]中使用乘法四则运算 步骤: 打开 ...