JavaScript内置对象之数组
一、JavaScript对象之数组
1、创建数组的方式
(1)使用Array构造函数
语法:new Array()
小括号()说明:
-预先知道数组要保存的项目数量
-向Array构造函数中传递数组应包含的项
(2)使用数组字面量表示法
-由一对包含数组项的方括号[]表示,多个数组之间以逗号隔开
2、数组元素的读写
-读取和设置值时,使用方括号[]并提供相应的索引
说明:索引是从0开始的正整数
3、数组的长度
语法:array.length
功能:获取数组array的长度
返回值:number
说明:
-通过设置length可以从数组的末尾移除或向数组中添加新项。
-把一个值放在超出当前数组大小的位置上时,会重新计算数组长度值,长度值等于最后一项索引加1。
4、数组方法的栈方法
push() unshift() pop() shift()
(1)push()
-语法:
arrayObject.push(newele1,newele2……newelen);
-功能:
把它的参数顺序添加到arrayObject的尾部。
-返回值:
把指定的值添加到数组后的新长度。
-例:
<script>
var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
arr.push("sass");
console.log(arr);
</script>
(2)unshift()
-语法:
arrayObject.unshift(newele1,newele2……newelen);
-功能:
把它的参数顺序添加到arrayObject的开头。
-返回值:
把指定的值添加到数组后的新长度。
-例:
<script>
var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
arr.unshift("sass");
console.log(arr);
</script>
(3)pop()
-语法:
arrayObject.pop();
-功能:
删除数组最后一个元素。
-返回值:
被删除的那个元素。
-例:
<script>
var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
var n= arr.pop();
console.log(n);
</script>
(4)shift()
-语法:
arrayObject.shift();
-功能:
删除数组第一个元素。
-返回值:
被删除的那个元素。
-例:
<script>
var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
var r=arr.shift();
console.log(r);
</script>
5、join() 、reverse()、sort()方法
-join():把数组转换成字符串
-reverse():把数组元素顺序反转
-sort() :对数组元素排序
(1)join()
-语法:
arrayObject.join(separator);
-功能:
把数组所有元素放入一个字符串。
-返回值:
字符串。
-例:
<script>
var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
var r=arr.join("-"); //括号内为空的话,默认是,(逗号)连接;
console.log(r);
document.write(r);
</script>
(2)reverse()
-语法:
arrayObject.reverse();
-功能:
用于颠倒数组中的元素顺序。(反转)
-返回值:
数组。
-例:
<script>
var arr=["a" ,"b", "c" , "d","e" ];
var r=arr.reverse();
console.log(r);
</script>
(3)sort()
-语法:
arrayObject.sort(sortby);
-功能:
把数组内元素进行排序。
-返回值:
数组。
-说明:
-即使数组中的每一项都是数值,sort()方法比较的也是字符串。
-sort()方法可以接收一个比较函数作为参数。
-例:
<script>
var arr=[10,11,1,2,5,88,9,-1 ];
var r=arr.sort(function (a,b) {
return a>b;
});
console.log(r);
</script>
(4)例子:让我们来封装一个函数,实现不用reverse()方法也能实现数组反转的功能,比如:数组1,2,3,4,5,通过该函数反转后,输出的是:5,4,3,2,1。
<script>
function arrReverse(arr){
var newArr=[];
for(var i=0;i<arr.length;i++){
return newArr= arr.sort(function (a,b) {
return a<b;
});
}
}
document.write(arrReverse([1,2,3,4,5,6,7,8]));
</script>
6、数组方法(concat和slice)
-concat()
-slice()
(1)concat()
-语法:
arrayObject.concat(arrayX,arrayX……arrayX);
-功能:
连接两个或多个数组
-返回值:
数组。
-例:
<script>
var arr1=["a","b","c","d",1],
arr2=["e","f",1,2],
arr3;
arr3=arr1.concat(arr2); //arr2后面还可以加数组。
console.log(arr3);
</script>
(2)slice()
-语法:
arrayObject.slice(start,end);
-功能:
从已有的数组中返回选定的元素
-参数:
start(必需)规定从何处开始选取,如是负数,从数组尾部开始算起
end(可选)规定从何处结束选取,是数组片断结束处的数组下标
-说明:
-如没指定end,切分的数组包含从start到数组结束懂得所有元素。
-如slice()方法的参数中有一个负数,则用数组长度加上该数来确定相应的位置
-返回值:
数组。
-例;
<script>
var arr1=[1,2,3,4,5,6,7,8,9],
arr3;
arr3=arr1.slice(-6,8);
console.log(arr3);
</script>
7、数组方法(splice)
(1)删除
-语法:
arrayObject.splice(index,count);
-功能:
删除从index处开始的零个或多个元素。
-返回值:
含有被删除的元素的数组。
-说明:
-count是要删除的数量.如果设置为0,则不会删除。如果不设置,则从index处开始删除所有值。
-例:
<script>
var arr1=["a","b","c","d",1],
arr3;
arr3=arr1.splice(1,2);
console.log(arr3);
</script>
(2)插入
-语法:
arrayObject.splice(index,0,item1……itemx);
-功能:
在指定位置插入值
-返回值:
数组
-参数:
index:起始位置
0:要删除的项数
item1……itemx :要插入的项
-例:
<script>
var arr1=["a","b","c","d","e"];
arr1.splice(2,0,"m","n");
console.log(arr1);
</script>
(3)替换
-语法:
arrayObject.splice(index,count,item1……itemx);
-功能:
在指定位置插入值,且同时删除任意数量的项。
-返回值:
从原始数组中删除的项(如果没有删除的项,则返回空数组)
-参数:
index:起始位置
count:要删除的项数
item1……itemx :要插入的项
-例:
<script>
var arr1=["a","b","c","d","e"];
arr1.splice(2,2,"m","n","j");
console.log(arr1);
</script>
8、数组方法(indexOf和lastIndexOf)
(1)indexOf
-语法:
arrayObject.indexOf(searchvalue,startIndex);
-功能:
从数组的开头(位置0)开始向后查找
-返回值:
number。查找的项在数组里面的位置,没有找到的情况下返回-1;
-参数:
searchvalue:必需,要查找的项;
startIndex:可选,起点位置的索引。
-例:
<script>
var arr1=[1,2,3,4,5,6,7];
var pos=arr1.indexOf(3);
console.log(pos);
</script>
(2)lastIndexOf
-语法:
arrayObject.lastIndexOf(searchvalue,startIndex);
-功能:
从数组的末尾开始向后查找
-返回值:
number。查找的项在数组里面的位置,没有找到的情况下返回-1;
-参数:
searchvalue:必需,要查找的项;
startIndex:可选,起点位置的索引。
-例:
<script>
var arr1=[1,2,3,4,5,6,7];
var pos=arr1.lastIndexOf(5);
console.log(pos);
</script>
JavaScript内置对象之数组的更多相关文章
- JavaScript内置对象(字符串,数组,日期的处理)
Date 日期对象 日期对象可以储存任意一个日期,并且可以精确到毫秒数(1/1000 秒). 定义一个时间对象 : var Udate=new Date(); 注意:使用关键字new,Date()的首 ...
- javaScript 内置对象-Array数组
Array 对象方法 方法 描述 concat() 连接两个或更多的数组,并返回结果. join() 把数组的所有元素放入一个字符串.元素通过指定的分隔符进行分隔. pop() 删除并返回数组的最后一 ...
- JavaScript 内置对象 Array 数组
Array 数组 1.创建数组 构造函数 new Array() 小括号内可以是数组元素个数,也可以是数组项 数组字面量表示法 var arr = [1,2,3,4,5]; 2.数组长度 arr.le ...
- 学习笔记:javascript内置对象:数组对象
1.数组对象的创建 1.设置一个长度为0的数组 var myarr=new array(); 2.设置一个长度为n的数组 var myarr=new arr(n); 3.声明一个赋值的指定长度 ...
- document和javaScript内置对象
1.Document 属性: referrer //返回载入当前文档的URL URL //返回当前文档的URL 方法: getElementById(); //根据id获取html元素对象 getEl ...
- javascript 内置对象及常见API
javascript 内置对象及常见API 2012-09-02 15:17 571人阅读 评论(0) 收藏 举报 javascript正则表达式文档浏览器urlstring Javascript内置 ...
- JavaScript进阶 - 第7章 JavaScript内置对象
第7章 JavaScript内置对象 7-1 什么是对象 JavaScript 中的所有事物都是对象,如:字符串.数值.数组.函数等,每个对象带有属性和方法. 对象的属性:反映该对象某些特定的性质的, ...
- JS基础-语法+流程控制语句+函数+内置对象【数组】
JS语法: Javascript基本数据类型:undefined/null/Boolean/number/string 复杂数据类型:object typeof用来检测变量的数据类型 typeof的使 ...
- JavaScript高级:JavaScript面向对象,JavaScript内置对象,JavaScript BOM,JavaScript封装
知识点梳理 课堂讲义 1.JavaScript面向对象 1.1.面向对象介绍 在 Java 中我们学习过面向对象,核心思想是万物皆对象. 在 JavaScript 中同样也有面向对象.思想类似. 1. ...
随机推荐
- git上传到阿里云code
一.在阿里云code(kelude)注册用户,新建项目.二.安装Git后使用GitBash生产ssh key:(https://zhidao.baidu.com/question/1303468264 ...
- 上海敏行医学招聘物理仿真,3D图形人才
工作职能: 1.开发医学虚拟手术中的柔体仿真引擎/图形效果 2.柔体仿真引擎.和引擎开发主工程师一起完善和改进仿真引擎的开发工作. 3.3D图形效果的改进. 职位要求: 1.本科以上学历,1年以上c+ ...
- IOS :编译时出现的错误 ,希望可以有所帮助
1."std::ios_base::Init::~Init()", referenced from 答1: 如果出现这样的编译问题,是需要再加进libstdc++.dylib和li ...
- 安卓APP测试验证点总结
最近较懒,加之闺女出生后记忆没完全恢复,总是忘东忘西,关于安卓APP测试的验证点还是总结一下,方便设计测试用例时查阅,也给各位博友参考! 1.除APP的正常功能点外,还有以下验证点: 安装/卸载(考虑 ...
- 洛谷P3370 【模板】字符串哈希
P3370 [模板]字符串哈希 143通过 483提交 题目提供者HansBug 标签 难度普及- 提交 讨论 题解 最新讨论 看不出来,这题哪里是哈希了- 题目描述 如题,给定N个字符串(第i个 ...
- iptables日志探秘
iptables日志探秘 防火墙的主要功能除了其本身能进行有效控制网络访问之外,还有一个很重要的功能就是能清晰地记录网络上的访问,并自动生成日志进行保存.虽然日志格式会因防火墙厂商的不同而形态各异,但 ...
- linux expect命令使用入门
expect的核心是spawn expect send set spawn:spawn是进入expect环境后才可以执行的expect内部命令,相当于shell中的内置命令,通过它,调用需要执行的 ...
- sql2000添加表注释,列注释 及修改 删除 注释
--创建表--create table 表(a1 varchar(10),a2 char(2)) --为表添加描述信息EXECUTE sp_addextendedproperty 'MS_Descri ...
- c++ Primer 第四版 第一阶段 const总结
由于期末值考一门软件安全,所以果断看起c++Primer ,因为之前看谭浩强的c++感觉没什么用啊.所以这本书每阶段做个总结!!! 1.Const限定符作用: 在for循环中上限应该用一个固定变量来设 ...
- sql server2008安装说明 详细完整版
SQL Server 2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的SQL Server版本. 在现今数据的世界里,公司要获得成功和不断发展,他们 ...