去重

var arr=[11,11,333,4,4,5,66,66,7];
// 方法一:在新数组内判断不存在时加入
var newarr1=[];
function quchong1(){
for(var i=0;i<arr.length;i++){
if(newarr1.indexOf(arr[i])==-1){
newarr1.push(arr[i])
}
}
console.log(newarr1)
}
quchong1()
// 方法二:前后数组比较,若相等,跳过该数
var newarr2=[];
function quchong2(){
for(var i=0;i<arr.length;i++){
for(var j=i+1;j<arr.length;j++){
if(arr[i]==arr[j]){
j=++i
}
}
newarr2.push(arr[i])
}
return newarr2
}
quchong2()
console.log(newarr2)
// 方法三:es6 Set自动去除重复数据
let newarray3 =[...new Set(arr)] ;
console.log(newarray3);
// 方法四
var a = {}, newarr4 = []
function quchong4() {
for (var i = 0; i <arr.length; i++) {
var arr1 = arr[i];
var d = (typeof arr1) + arr1;
if (a[d] === undefined) {
newarr4.push(arr1);
a[d] = 1;
}
} }
quchong4();
console.log(newarr4);
// 方法五:自己与自己比较,若相等,删除该位置的数据
var newarray5=arr;
for (var i = 0; i < newarray5.length; i++) {
for (var j = 0; j < newarray5.length; j++) {
if(i!=j){
if(newarray5[j] == newarray5[i]){
newarray5.splice(i,1)
}
}
}
}
console.log(newarray5)
// 方法六:indexof每次只返回第一个元素的位置,
var newarray6 = arr.filter(function (element, index, arr2) {
return arr2.indexOf(element) === index;
});
console.log(newarray6)

去空

String.prototype.trim=function(){

return this.replace(/(^\s+)|(\s+$)g,'')

}

str.trim()

function trim(str){

return str.replace(/(^\s+)|(\s+$)/g,'')

}

trim(str)

原生数组排序

function sort(arr){

for(var i=0;i<arr.length;i++){

for(var j=i;j<arr.length;j++){

if(arr[i]>arr[j]){

var max=arr[i];

arr[i]=arr[j];

arr[j]=max;

}

}

}

}

sort([....])

数组方法排序

arr.sort(function(a,b){return a-b})

注:

a-b升序

b-a降序

javascript之数组的6种去重方法的更多相关文章

  1. JavaScript中数组的两种排序方法详解(冒泡排序和选择排序)

    一.冒泡排序的原理(从小到大) 相邻两个数进行比较,如果前一个数大于后一个数,那么就交换,否则不交换 原理剖析 比如有一组含有6个数字的数:5.3.7.2.1.6一共6个数字,做5次循环,每次循环相邻 ...

  2. JS中的五种去重方法

    JS中的五种去重方法 第一种方法: 第二种方法:  第三种方法: 第四种方法: 第五种方法:优化遍历数组法 思路:获取没重复的最右一值放入新数组 * 方法的实现代码相当酷炫,* 实现思路:获取没重复的 ...

  3. JavaScript获取数组最小值和最大值的方法

    本文实例讲述了JavaScript获取数组最小值和最大值的方法.分享给大家供大家参考.具体如下: ? 1 2 3 4 5 6 var arr = new Array(); arr[0] = 100; ...

  4. javascript中数组的22种方法

    × 目录 [1]对象继承 [2]数组转换 [3]栈和队列[4]数组排序[5]数组拼接[6]创建数组[7]数组删改[8]数组位置[9]数组归并[10]数组迭代[11]总结 前面的话 数组总共有22种方法 ...

  5. javascript中数组的22种方法 (转载)

    前面的话 数组总共有22种方法,本文将其分为对象继承方法.数组转换方法.栈和队列方法.数组排序方法.数组拼接方法.创建子数组方法.数组删改方法.数组位置方法.数组归并方法和数组迭代方法共10类来进行详 ...

  6. JavaScript数组的三种定义方法

    数组的定义: <script type="text/javascript"> // <!--声明数组--> // 1.先声明数组长度,后进行赋值 var a ...

  7. Java 数组的三种创建方法

    public static void main(String[] args) { //创建数组的第一种方法 int[] arr=new int[6]; int intValue=arr[5]; //S ...

  8. Java 数组的三种创建方法,数组拷贝方法

    public static void main(String[] args) {//创建数组的第一种方法int[] arr=new int[6];int intValue=arr[5];//Syste ...

  9. AJPFX关于Java中运用数组的四种排序方法

    JAVA中在运用数组进行排序功能时,一般有四种方法:快速排序法.冒泡法.选择排序法.插入排序法.快速排序法主要是运用了Arrays中的一个方法Arrays.sort()实现.冒泡法是运用遍历数组进行比 ...

随机推荐

  1. codevs——1228 苹果树

    1228 苹果树  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond 题解  查看运行结果     题目描述 Description 在卡卡的房子外面,有一棵 ...

  2. Execption异常 手动和自动抛除异常

    package cn.zmh.Exception; /* * * try{ * 需要被检测的语句 * } * catch(异常类 变量){ * 异常的处理语句 * } * finally{ * 一定会 ...

  3. centos 安装php缓存 apc或zend-opcode

    去官方下载apc:pecl.php.net 搜索apc,安装最新的. #wget http://pecl.php.net/get/APC# tar -xzvf APC-3.1.9.tgz#cd  AP ...

  4. nginx匹配规则

    rewrite ^/(.*)$ /index.php/$1 last; 这句话的意思,是把slash(/)之后的所有内容在前面加上一个/index.php,这里的$1指代前面括号的正则表达式(.*)所 ...

  5. 更改Tomcat命令行窗体标题

     在windows下启动多个tomcat时.不好区分哪个tomcat相应哪个服务,能够通过下面方法设置Tomcat命令行窗体的标题: 1.在%tomcat_home%\bin\catalina.b ...

  6. 前端编程提高之旅(十)----表单验证插件与cookie插件

        实际项目开发中与用户交互的常见手法就是採用表单的形式.取得用户注冊.登录等信息.而当用户注冊或登录后又须要记住用户的登录状态.这就涉及到经常使用的两个操作:表单验证与cookie增删查找.   ...

  7. Linux-----Ubuntu设置开机启动模式

  8. vimrc 避免中文乱码配置

    et smsyntax onset ts=4set sts=4set sw=4set hlsearchset rulerset backspace=indent,eol,startset encodi ...

  9. Excel实用技巧-如何批量提取excel工作表名称

    Excel实用技巧-如何批量提取excel工作表名称 1. 打开Excel文件,点击“公式”栏,进而点击“定义管理器” 2. 在弹出的对话框中,点击新增按钮, 名称:“sheet”,引用位置:“=RE ...

  10. MVC上传文件并模拟进度条

    进度条样式和JS <style type="text/css"> .spa { font-size: 12px; color: #0066ff; } .put { fo ...