arry()数组的理解及api的使用(二)
注意:本文都来自于w3school中文网,如果需要完整版请去--http://www.w3school.com.cn/jsref/jsref_obj_array.asp
1.1 slice() 方法---可从已有的数组中返回选定的元素。
arrayObject.slice(start,end)//语法
start 必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。
end 可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。
返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。
请注意,该方法并不会修改数组,而是返回一个子数组。如果想删除数组中的一段元素,应该使用方法 Array.splice()。
<script type="text/javascript"> var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas" document.write(arr + "<br />")//George,John,Thomas
document.write(arr.slice(1) + "<br />")//John,Thomas
document.write(arr)//George,John,Thomas </script>
在本例中,我们将创建一个新数组,然后显示从其中选取的元素:
<script type="text/javascript"> var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin" document.write(arr + "<br />")//George,John,Thomas,James,Adrew,Martin
document.write(arr.slice(2,4) + "<br />")//Thomas,James
document.write(arr)//George,John,Thomas,James,Adrew,Martin </script>
1.2 sort() 方法---用于对数组的元素进行排序。
语法 arrayObject.sort(sortby)
sortby 可选。规定排序顺序。必须是函数。
例子
<script type="text/javascript"> var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin" document.write(arr + "<br />")//George,John,Thomas,James,Adrew,Martin
document.write(arr.sort())//Adrew,George,James,John,Martin,Thomas </script>
在本例中,我们将创建一个数组,并按字母顺序进行排序:
<script type="text/javascript"> var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1" document.write(arr + "<br />")//10,5,40,25,1000,1
document.write(arr.sort())//1,10,1000,25,40,5 </script>
请注意,上面的代码没有按照数值的大小对数字进行排序,要实现这一点,就必须使用一个排序函数:
<script type="text/javascript"> function sortNumber(a,b)
{
return a - b
} var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1" document.write(arr + "<br />")//10,5,40,25,1000,1
document.write(arr.sort(sortNumber))//1,5,10,25,40,1000 </script>
1.4 splice() 方法--向/从数组中添加/删除项目,然后返回被删除的项目。
arrayObject.splice(index,howmany,item1,.....,itemX)
index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
item1, ..., itemX 可选。向数组添加的新项目。
返回值
Array 包含被删除项目的新数组,如果有的话。
说明
说明:splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。
如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。
在本例中,我们将创建一个新数组,并向其添加一个元素:
<script type="text/javascript"> var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin" document.write(arr + "<br />")//George,John,Thomas,James,Adrew,Martin
arr.splice(2,0,"William")
document.write(arr + "<br />")//George,John,William,Thomas,James,Adrew,Martin </script>
在本例中我们将删除位于 index 2 的元素,并添加一个新元素来替代被删除的元素:
<script type="text/javascript"> var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin" document.write(arr + "<br />")//George,John,Thomas,James,Adrew,Martin arr.splice(2,1,"William")
document.write(arr)//George,John,William,James,Adrew,Martin </script>
在本例中我们将删除从 index 2 ("Thomas") 开始的三个元素,并添加一个新元素 ("William") 来替代被删除的元素:
<script type="text/javascript"> var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin" document.write(arr + "<br />")//George,John,Thomas,James,Adrew,Martin
arr.splice(2,3,"William")
document.write(arr)//George,John,William,Martin </script>
1.5 toString() 方法--可把数组转换为字符串,并返回结果。
语法 arrayObject.toString()
<script type="text/javascript"> var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas" document.write(arr.toString())//George,John,Thomas </script>
1.5 unshift() 方法--可向数组的开头添加一个或更多元素,并返回新的长度。
arrayObject.unshift(newelement1,newelement2,....,newelementX)
newelement1 必需。向数组添加的第一个元素。
newelement2 可选。向数组添加的第二个元素。
newelementX 可选。可添加若干个元素。
请注意,unshift() 方法不创建新的创建,而是直接修改原有的数组。
在本例中,我们将创建一个数组,并把一个元素添加到数组的开头,并返回数组的新长度:
<script type="text/javascript"> var arr = new Array()
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas" document.write(arr + "<br />")//George,John,Thomas
document.write(arr.unshift("William") + "<br />")//
document.write(arr)//William,George,John,Thomas </script>
arry()数组的理解及api的使用(二)的更多相关文章
- arry()数组的理解及api的使用(一)
我们想要了解数组,首先就要先要了解到什么是数据结构,所谓的数据结构就是把数据与数据见的关系按照特定的结构来保存.设计合理的数据结构是解决问题的前提.了解了数据结构后我们下面来数组的定义:数组(arra ...
- Javascript 数组对象常用的API
常用的JS数组对象API ES5及以前的Api ECMAScript5为数组定义了5个迭代方法,每个方法接收两个参数, 一个是每项运行的函数,一个是运行该函数的作用域对象(可选项),传入这些方法的函数 ...
- poj 2406:Power Strings(KMP算法,next[]数组的理解)
Power Strings Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 30069 Accepted: 12553 D ...
- js中对arry数组的各种操作小结
最近工作比较轻松,于是就花时间从头到尾的对js进行了详细的学习和复习,在看书的过程中,发现自己平时在做项目的过程中有很多地方想得不过全面,写的不够合理,所以说啊,为了在以后的工作中写出最优化的代码,我 ...
- 2018.9.28 典型for循环特殊理解及其二维数组的理解
如果for里面换成了函数结果会是怎么样呢?下面就来介绍一下 package praDemo; public class Test { public static boolean foo(char c) ...
- js中对arry数组的各种操作小结 瀑布流AJAX无刷新加载数据列表--当页面滚动到Id时再继续加载数据 web前端url传递值 js加密解密 HTML中让表单input等文本框为只读不可编辑的方法 js监听用户的键盘敲击事件,兼容各大主流浏览器 HTML特殊字符
js中对arry数组的各种操作小结 最近工作比较轻松,于是就花时间从头到尾的对js进行了详细的学习和复习,在看书的过程中,发现自己平时在做项目的过程中有很多地方想得不过全面,写的不够合理,所以说啊 ...
- VuePress教程之深入理解插件API
VuePress教程之深入理解插件API 本文目录 1 VuePress教程之深入理解插件API 2 插件 ??? 2.1 暖暖身 2.2 插件如何运作 3 准备 3.1 Markdown 3.2 P ...
- KMP中next数组的理解
next数组是KMP的核心,但对于next数组我们总是有时候感觉明白了,但有时候又感觉没明白,现在我就说下我自己对KMP中next数组的理解,首先next[i]上的数字的意义,next[i]表示的是当 ...
- KMP算法中我对获取next数组的理解
之前在学KMP算法时一直理解不了获取next数组的函数是如何实现的,现在大概知道怎么一回事了,记录一下我对获取next数组的理解. KMP算法实现的原理就不再赘述了,先上KMP代码: 1 void g ...
随机推荐
- poi实现Excel导出
最近做了一个导出Excel的小功能,以前没接触过,现在分享下自己的代码,想让各位帮忙看看有啥地方可以优化,也方便自己以后查阅... 首先是excelAction的代码: /** * excelActi ...
- django TypeError: 'module' object is not callable
原因:导入模块时直接把模块当函数使用 from rest_framework import reverse #import reverse module @api_view(("GET&qu ...
- JavaScript中var a=b=c=d的小发现
看了别人的博客随手记录下 先看一下以下的代码 var a=1,b=2,c=3; (function(){ var a=b=1; })(); console.log(a); console.log(b) ...
- 自制单片机之七……RS232串口
在我的板子上其它的部分都已完成了,现在就剩下RS232串口了.串口对于单片机很重要,有了它就可以和PC通信了,可以用PC来控制你的单片机,也可以将你单片机上采集的数据传到PC上. 留的位置好像有点挤. ...
- Chaos Software Google Sync v10.1.1.0 和Syncovery Pro
Chaos Software Google Sync v10.1.1.0 Release: Chaos.Software.Google.Sync.v10.1.1.0.Incl.Keygen-BEANS ...
- Windows7下移植Qt4.8.4项目到QT5.2上时遇到的一些问题(包括三篇参考文章)
文章来源:http://blog.csdn.net/ccf19881030/article/details/18220447 问题一:错误:C1083: 无法打开包括文件:“QApplication” ...
- 微软开源PowerShell并支持Linux和OS X
[微软在开源的道路上加速度了] 从一开始的各种对抗,各种通吃,到现在开始做服务,包罗万象.果然,换了主力,大有不同. 微软今天还宣布开源其.NET框架,令.NET Core能在Linux和OS X上运 ...
- Powershell Switch 条件
Powershell Switch 条件 6 21 1月, 2012 在 Powershell tagged Powershell教程/ 分支/ 字符串/ 数字/ 条件by Mooser Lee 本 ...
- Teach Yourself Scheme in Fixnum Days 13 Jump跳转
Jumps One of the signal features of Scheme is its support for jumps or nonlocal control. Specificall ...
- 使IE6支持:hover效果
:hover是在CSS中用来制作效果最常用到的一个伪类,比如:标签或div上的鼠标悬停效果 li:hover,div:hover等. 但这种效果是css2及以上版本才添加的,对于只支持css1的浏览器 ...