Slice(strart,end)用来从数组中提取元素.该方法不会改变元素数组,而是将截取到的元素封装到一个新数组中返回

参数start 截取开始的位置索引,包含开始索引

参数end 截取结束位置的索引,不包括结束索引,第二参数可以省略,截取从start索引往后的所有元素

索引可以传负值,从后往前计算-1为倒数第一个,-2为倒数第二个

Splice方法 删除原数组中指定元素,会影响原数组,将被删除的元素作为返回值返回

splice(start, deleteCount, [item1[, item2[, . . . [,itemN]]]])

start 必选项。指定从数组中移除元素的开始位置,这个位置是从 0 开始计算的。

deleteCount 必选项。要移除的元素的个数。

item1, item2,. . .,itemN 必选项。要在所移除元素的位置上插入的新元素。

利用splice去重练习

var arr = [1,3,5,2,4,2,3,5,5,5,5,2]
for (var i = 0; i<arr.length;i++) {
for (var j = i+1; j<arr.length;j++) {
if (arr[i]==arr[j]) {
arr.splice(j,1)
j--
          /*
           j--不写输出结果为[1, 3, 5, 2, 4, 5],因为splice会影响当前数组元素,当相邻2个以上的重复元素比较时,会把第二个删除,而此时第三个重复元素的位置就变成了第二,
           但是第二个已经比对过了,所以会直接往下走,造成重复数据未能完全清除
          */
}
}
}
console.log(arr)

Concact方法 可以连接2个或者多个数组、元素,并把新的数组返回,

该方法对原数组不会产生变化,

Join方法 该方法可以将数组转换成一个字符串,不对原数组产生影响,而是将转换后的字符串作为结果返回,Join()方法中可以指定一个字符串作为参数,这个字符串会成为数组中元素的连接符,不指定默认为逗号

Reverse方法用来反转数组,头尾互换.会修改原数组内的数据

Sort 对数组内元素排序,影响原数组按照字符串在UNICODE编码排序,所以对数字排序会错误. sort(sortfunction)

sortFunction可选项。是用来确定元素顺序的函数的名称。如果这个参数被省略,那么元素将按照 ASCII 字符顺序进行升序排列。如果为 sortfunction 参数提供了一个函数,那么该函数必须返回下列值之一:

负值,如果所传递的第一个参数比第二个参数小。

零,如果两个参数相等。

正值,如果第一个参数比第二个参数大。

我们可以自己写个函数来规定里面的参数排序方法

var arr = [1,3,5,2,4,2,3,5,5,5,5,2]

         function fun (a,b) {
if (a>b) {
return 1
}
else if( a <b){
return -1
} else{ return 0 } } arr.sort(fun) console.log(arr)

数组之slice,splice,Concact,Reverse,Sort方法的更多相关文章

  1. JS 数组array方法push, pop, unshift, shift, slice,splice,contact, join, sort

    Array:数组对象用来在单独的变量名中存储一系列的值   定义数组:         1. var arrayObj = new Array();         2. var arrayObj = ...

  2. 定义一个数组,并对这个数组进行动态初始化,使用sort方法进行排序后,再将数组中的元素倒置过来。

    Sort方法,生序排序 package com.fs.array; import java.util.Arrays; public class ArraySort { public static vo ...

  3. js中json对象数组按对象属性排序(sort方法)---2(根据拼音排序汉字和排序英文)

    本例主要实现 中文汉字按拼音排序的方法和英文按照首字母排序的方法. 要排序的数据: //要排序的数据 let data = [ {chinese: '蔡司', english: 'Chase'}, { ...

  4. .NET中string[]数组和List<string>泛型的相互转换以及Array类的Sort()方法(转)

    从string[]转List<string>: " }; List<string> list = new List<string>(str); 从List ...

  5. 基于原生JS封装数组原型上的sort方法

    基于原生JS封装数组原型上的sort方法 最近学习了数组的原型上内置方法的封装,加强了用原生JS封装方法的能力,也进一步理解数组方法封装的过程,实现的功能.虽然没有深入底层,了解源码.以下解法都是基于 ...

  6. Python 冒泡排序只适用位数相同,位数不同用a.sort()方法

    数组内容双位数排序: #coding:utf-8 print u"中文" a = ['] b = 0 c = 0 print a i =0 for j in range (len( ...

  7. Array类的Sort()方法

    刚复习了Array类的sort()方法, 这里列举几个常用的,和大家一起分享. Array类实现了数组中元素的冒泡排序.Sort()方法要求数组中的元素实现IComparable接口.如System. ...

  8. C# Array类的Sort()方法

    Array类实现了数组中元素的冒泡排序.Sort()方法要求数组中的元素实现IComparable接口.如System.Int32 和System.String实现了IComparable接口,所以下 ...

  9. 数组中的元素 增加push用法 unshift() 方法 和减少pop() 方法 shift() 和其他位置增删 splice() 方法 join() 方法 reverse() 方法 sort() 方法

    push用法 push 英 [pʊʃ] 美 [pʊʃ] vt. 推,推动; vt. 按; 推动,增加; 对…施加压力,逼迫; 说服; n. 推,决心; 大规模攻势; 矢志的追求 定义和用法 push( ...

随机推荐

  1. Docker 容器技术

    前言: 之前感觉Docker是一种小虚拟机,docker和KVM虚拟机之间有什么区别.联系.可以应用在什么样的生产环境? 一.Docker是什么以及和KVM的区别 1.docker概念? Docker ...

  2. 下拉菜单css

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. js 批量提交数据

    // 批量提交数据 let pageSize = 100, total = dataTmp.length, list = dataTmp let totalPage = Math.ceil(total ...

  4. spark streamingcontext

    一个StreamingContext定义之后,必须做以下几件事情:1.通过创建输入DStream来创建输入数据源.2.通过对DStream定义transformation和output算子操作,来定义 ...

  5. secureCRT保存屏幕输出内容

    1.有时执行一个mysql语句,屏幕打印行过多,需要设置翻动最大行数 打开Options Session Options–>Terminal–>Emulation,在Scrollback输 ...

  6. 小白的python之路Linux部分10/27&28

     用户 创建流程模拟 总代码 [root@localhost ~]# vim /etc/passwd #1 [root@localhost ~]# mkdir /home/rose [root@loc ...

  7. 《程序设计入门——C语言》翁恺老师 第一周编程练习记录

    1 输出“Hello World”(5分) 题目内容: 请输出一行,内容为 Hello World 请注意大小写. 由于这一周只是简单地介绍了C程序的基本框架,还不能做很多事情,甚至还不能做数据的输入 ...

  8. 用git提交源代码

    码云账号 markliuning      作业已经上传 题目要求:定义一个包含有10个整数的数组a并初始化,定义一个指针变量p,p指向数组a,定义函数fun,在fun内部访问数组,并打印出数组中各元 ...

  9. vue+uwsgi+nginx部署前后端分离项目

    前后端分离,vue前端提供静态页面,且可以向后台发起get,post等restful请求. django后台提供数据支撑,返回json数据,返回给vue,进行数据页面渲染 后端 创建虚拟环境 解决dj ...

  10. JDBC Request

    1.下载jdbc驱动,放至jmeter安装目录的lib目录和lib\ext目录下 PS:自己操作的时候,由于JDBC Connection Configuration中驱动名称写错,前面多了一个空格, ...