数组的方法(15个)

对象数据类型;
数组成员有一个与之对应的索引
length : 代表数组成员的个数;
操作改变数组一些方法;这些数组的方法都是内置的;
// 1. 方法作用;
// 2. 方法的参数
// 3. 方法返回值
// 4. 原有的数组是否发生改变;

1.push

1): 向数组末尾新增一项;
2): 参数是新增的那一项;可以传多个;
3): 新数组的数组成员的个数;
4): 原有数组发生改变;
var ary = [12,89,89,36,0,"dsh",true,99];
ary.push(100)
ary[ary.length] = 100;
console.log(ary);

2.pop

1) : 删除数组的最后一项
2) : 不需要传参数
3) : 被删除的那一项
4) : 原有数组发生改变;
ary.pop();
delete ary[ary.length-1]
console.log(ary[7]);
ary.length--;

3:unshift

1): 向数组开头新增一项;
2): 需要传参数
3): 新数组的数组成员个数
4): 原有数组发生改变;
ary.unshift(12);
console.log(ary);

4.shift

1): 删除数组的第一项
2): 不需要传参
3): 被删除的那一项
4): 原有数组的发生改变;
ary.shift();

5.slice

1) : 数组的截取
2) :slice(m,n): 从数组索引m开始,截取到索引n,但是不包含n;[前包后不包]
slice(m) : 从索引m开始,截取到末尾;
slice():数组的克隆 slice(0);
// 索引负数: 让当前length+负数;
3) : 返回值是截取的数组
4) : 原有数组不发生改变;
var ary = [12,89,89,36,0,"dsh",true,99];
ary.slice()// 不传参;复制克隆
ary.slice(1)// 从索引1开始,截取到数组的末尾
ary.slice(2,6)// 从索引2开始,截取到索引8;但是不包含8;
//支持负数
ary.slice(6,4) // []

6.splice

1) : 删除数组中的某几项
2) : splice(m,n): 从索引开始,删除n个
splice(m) : 从索引m开始删除到末尾;
splice(0):
splice(m,x,n);替换从索引m开始,删除x个,用n替换;
3): 返回值;删除那几项,并且以数组返回
4) : 原有数组发生改变;
ary.splice(0);// 从索引0开始,删除到数组的末尾
ary.splice(1,4) // 从索引1开始,删除4项
ary.splice(1,3,5,19)// 替换
ary.splice(1,0,5)// 在索引1的前面新增一项数字5;
console.log(ary);

7.sort

1) : 数组排序
2) :参数
  • 1.sort() : 只能数组成员是相同位数的数组
  • 2.sort(function(a,b){return a-b}) 从小到大排序
  • 3.sort(function(a,b){return b-a})从大到小
    3) : 是排序之后的数组
    4) : 原有数组发生改变;
ary.sort() : 只能排数组成员位数相同的数组;
var ary = [12,8,99,67,85,1,35,66,"78"];
var ary = [1,8,5,3,2];
var ary = [123,678,987,567,345,234];
ary.sort(function (a,b) {
return a-b;
});
var newAry = ary.sort(function (a,b) {
return b-a;
});
console.log(newAry);

8.reverse

1): 将数组颠倒过来
2): 不需要传参数
3): 数组成员顺序倒过来之后的数组
4): 原有发生改变;
console.log(ary.reverse());
console.log(ary);

9.concat :

1) : 数组的拼接
2) :
  • 1.不传参数: 数组的克隆
  • 2.传参数,(数组、每一项);把传入的实参拼接新的数组中;
    3) : 拼接之后的新数组
    4) : 原有数组不发生改变;
var ary = [12,8,99,67,66,66,85,1,35,66,"78",66];
var ary1 =[1,2,3]
console.log(ary.concat([100,200,null]));
var a = ary.concat();
console.log(ary.concat());

10.join

1) : 把数组成员按照特定的字符连接成一个字符串;

2) :

  • 1.不传参数,会默认按照逗号分开
  • 2.传参数,(特定的字符)
    3) : 拼接之后的字符串
    4) :原有数组不发生改变;
console.log(ary.join("+"));//"12+8+99+67+85+1+35+66+78"
console.log(ary.join(""));//"1289967851356678"
console.log(ary.join());//"12,8,99,67,85,1,35,66,78"

11.indexOf

1) : 检测数组成员在数组中第一次出现的索引位置; 判断当前项是否在数组中存在;如果不存在,返回-1;
2): 需要参数
3): 返回在数组中第一次出现的索引;
4): 原有数组不发生改变;
console.log(ary.indexOf(66));
console.log(ary.indexOf(666));
console.log(ary.indexOf(888));

12.lastIndexOf

1) : 检测数组成员在数组中最后一次出现的索引位置; 判断当前项是否在数组中存在;如果不存在,返回-1;
2): 需要参数
3): 返回在数组中最后一次出现的索引;
4): 原有数组不发生改变;
console.log(ary.lastIndexOf(66));

13 .map

1) : 遍历数组和映射
2): 需要参数
3) : 映射之后的数组
4): 原有数组不发生改变;
var ary = [12,8,99,67,66,66,85,1,"78",66];
var total= null;
var mn = ary.map(function (item,index) {
console.log(item);//遍历数组;第一个参数就是数组成员
console.log(index);// 代表数组成员的索引
return "<li></li>>";
// 求和
total +=Number(item);
console.log(total);
console.log(mn);

14.forEach

1) : 遍历数组;没有返回值;
2) : 需要参数
3) : 返回值是undefined
4) : 原有数组不发生改变;
var bhh = ary.forEach(function (item,index) {
console.log(item);
return 10;
})
console.log(bhh);//undefined
console.log(ary);

15.toString

1) : 转字符串
2) : 不需要参数
3) : 返回一个去了中括号之后的字符串
4) : 原有数组不变;
var ary = [1,23,8,9,90]
console.log(ary.toString());// "1,23,8,9,90"
console.log([12].toString());// "12"
console.log([].toString());// ""
console.log(ary);

JavaScript基础知识(数组的方法)的更多相关文章

  1. javascript基础知识-数组

    1.javascript创建数组时无需声明数组大小或者在数组大小变化时重新分配 2.javascript数组是无类型的 3.数组元素不一定要连续 4.针对稀疏数组,length比所有元素的索引都要大 ...

  2. Javascript基础知识总结一

    Javascript基础知识总结一 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...

  3. 学习javascript基础知识系列第二节 - this用法

    通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...

  4. 学习javascript基础知识系列第三节 - ()()用法

    总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...

  5. JavaScript 基础知识 - BOM篇

    前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...

  6. C语言基础知识-数组和字符串

    C语言基础知识-数组和字符串 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数组概述 在程序设计中,为了方便处理数据把具有相同类型的若干变量按有序形式组织起来的方式我们称为数组 ...

  7. javascript 克隆对象/数组的方法 clone()

      1 11 javascript 克隆对象/数组的方法 clone() 1 demo: code: 1 var Obj; 2 let clone = (Obj) => { 3 var buf; ...

  8. JavaScript 基础(六) 数组方法 闭包

    在一个对象中绑定函数,称为这个对象的方法.在JavaScript 中,对象的定义是这样的: var guagua = { name:'瓜瓜', birth:1990 }; 但是,如果我们给瓜瓜绑定一个 ...

  9. (转)JAVA AJAX教程第二章-JAVASCRIPT基础知识

    开篇:JAVASCRIPT是AJAX技术中不可或缺的一部分,所以想学好AJAX以及现在流行的AJAX框架,学好JAVASCRIPT是最重要的.这章我给大家整理了一些JAVASCRIPT的基础知识.常用 ...

随机推荐

  1. grid - 网格轨道对齐方式

    网格轨道对齐可以相对于网格容器行和列轴. align-content指定网格轨道沿着行轴对齐方式:justify-content指定网格轨道沿着列轴对齐方式.它们支持下面属性: normal star ...

  2. EAS开发环境搭建.

    一:EAS开发环境安装 解压EAS服务器安装包到E盘即可,内含BOS开发环境. 二:EAS客户端安装 EAS8.0.exe安装到D盘,这是客户端. 三:远程数据库 使用远程运维系统,登陆数据库.

  3. linux 安装nvm,通过nvm安装node

    1,nvm git地址点击打开链接,安装命令 curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh ...

  4. Docker 版本

    1. Docker 版本 长话短说:现在Docker改为基于YY.MM的版本(像Ubuntu),用户可以选择Stable(发布较慢)或者Edge(发布较快)版本. Docker Engine改为Doc ...

  5. Redis面试刁难大全

    转自:https://mp.weixin.qq.com/s?__biz=MzI0MzQyMTYzOQ==&mid=2247483686&idx=1&sn=18dfa0fd08b ...

  6. 4 Git 基础 - 撤消操作

    撤消操作 任何时候,你都有可能需要撤消刚才所做的某些操作.接下来,我们会介绍一些基本的撤消操作相关的命令.请注意,有些撤销操作是不可逆的,所以请务必谨慎小心,一旦失误,就有可能丢失部分工作成果. 修改 ...

  7. idea 自动导入

  8. 如何使用maven优雅地管理项目版本号

    原文: https://blog.csdn.net/TeleDCOS/article/details/79853782

  9. plsql的特殊复制

    转载自:https://jingyan.baidu.com/article/2fb0ba409c8c2100f2ec5f91.html PL/SQL中写好的SQL语句,如果要放到JAVA文件中,如果很 ...

  10. js和jquery获取textarea输入的内容

    document.getElementById('textarea').value; $("#textarea").val()