JavaScript基础知识(数组的方法)
数组的方法(15个)
对象数据类型;数组成员有一个与之对应的索引length : 代表数组成员的个数;操作改变数组一些方法;这些数组的方法都是内置的;
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) : 返回值是undefined4) : 原有数组不发生改变;
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基础知识(数组的方法)的更多相关文章
- javascript基础知识-数组
1.javascript创建数组时无需声明数组大小或者在数组大小变化时重新分配 2.javascript数组是无类型的 3.数组元素不一定要连续 4.针对稀疏数组,length比所有元素的索引都要大 ...
- Javascript基础知识总结一
Javascript基础知识总结一 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...
- 学习javascript基础知识系列第二节 - this用法
通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...
- 学习javascript基础知识系列第三节 - ()()用法
总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...
- JavaScript 基础知识 - BOM篇
前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...
- C语言基础知识-数组和字符串
C语言基础知识-数组和字符串 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数组概述 在程序设计中,为了方便处理数据把具有相同类型的若干变量按有序形式组织起来的方式我们称为数组 ...
- javascript 克隆对象/数组的方法 clone()
1 11 javascript 克隆对象/数组的方法 clone() 1 demo: code: 1 var Obj; 2 let clone = (Obj) => { 3 var buf; ...
- JavaScript 基础(六) 数组方法 闭包
在一个对象中绑定函数,称为这个对象的方法.在JavaScript 中,对象的定义是这样的: var guagua = { name:'瓜瓜', birth:1990 }; 但是,如果我们给瓜瓜绑定一个 ...
- (转)JAVA AJAX教程第二章-JAVASCRIPT基础知识
开篇:JAVASCRIPT是AJAX技术中不可或缺的一部分,所以想学好AJAX以及现在流行的AJAX框架,学好JAVASCRIPT是最重要的.这章我给大家整理了一些JAVASCRIPT的基础知识.常用 ...
随机推荐
- CSS 小技巧(不定时更新)
1.Web 文本中的省略号 在Web开发中,对于一种情况很常见.那就是,文本太长,而放置文本的容器不够长,而我们又不想让文本换行,所以,我们想使用省略号来解决这个问题.在今天HTML的标准中并没有相关 ...
- 【算法随记】Canny边缘检测算法实现和优化分析。
以前的博文大部分都写的非常详细,有很多分析过程,不过写起来确实很累人,一般一篇好的文章要整理个三四天,但是,时间越来越紧张,后续的一些算法可能就以随记的方式,把实现过程的一些比较容易出错和有价值的细节 ...
- phpStorm中如何不让其自动添加封闭大括号?
Settings > Editor > General->Smart Keys.
- c# 非调试状态下面执行
#if !DEBUG View("ErrorSimple").ExecuteResult(ControllerContext);#endif
- APP微信支付Java后台的实现(springmvc)
第一次做微信支付,阅读完开发文档后,下了个官方demo,摸索了好久,期间也出现了好多问题,终于是实现生成预支付订单以及支付成功后接收微信服务器通知,不多说了,直接上代码: 一.工具类 Constant ...
- selenium面试题总结
2017年7月17日更新:已经更新部分答案 答案链接 今天有同学问到seleinum面试的时候会问到的问题,随便想了想,暂时纪录一下.欢迎大家在评论中提供更多问题. 去哪儿的面试题 selenium中 ...
- IntelliJIdea 2016.2 使用 tomcat 8.5 调试spring的web项目时,bean被实例化两次导致timer和thread被启动了两遍的问题的解决
今天新搭建了一个spring的web项目,项目启动时会启动一个线程,线程里定时执行任务,另外还启动了一个定时器,每秒钟统计系统吞吐量等业务性能数据.但是调试的时候惊奇的发现定时器和线程均被启动了两次. ...
- 流媒体之HLS——综述
[时间:2018-01] [状态:Open] [关键词:流媒体,stream,HLS] 0 HLS背景及初衷 HLS是由苹果公司发起的流媒体网络传输协议,可参考rfc8261 HTTP Live St ...
- [转]Kindeditor图片粘贴上传(chrome)
原文地址:https://www.cnblogs.com/jsper/p/7608004.html 首先要赞一下kindeditor,一个十分强大的国产开源web-editor组件. kindedit ...
- hdoj:2051
#include <iostream> #include <string> #include <vector> #include <algorithm> ...