Array 重排序方法和操作方法的简单实例

代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>重排序方法和操作方法</title>
    <script type="text/javascript">   
    //排序方法
      function basicSort(){
         var values=[0,10,2,3,12,5];
         alert(values.reverse());//reverse()方法只是把数组的顺序反过来
         alert(values.sort());//sort()方法比较的是字符串,大多数情况不是最佳的方案
         alert(values.sort(compare));//sort()方法可以接收一个比较函数作为参数
      }

//自定义比较函数,返回的数组是升序,也可以通过改变代码,如 value1<value2 return 1等来达到结果是降序的。
      function compare(value1,value2){
        if(value1 < value2){
          return -1;
        }else if(value1 > value2){
         return 1;
        }else{
          return 0;
        }
      }

//操作方法 concat()方法是基于当前的数组中的所有项创建一个新数组
      function basicConcat(){
        var colors=["red","blue","pink"];
        var colors2=colors.concat("yellow",["black","brown"]);//red,blue,pink,yellow,black,brown
        alert(colors2);
      }

//方法是基于当前的数组中的所有项创建一个新数组,可以接收一个或者两个参数,即截取  end > str >=start(即不包括结束位置的项)
      function basicSlice(){
         var colors=["red","blue","pink","yello","white"];
         var colors2=colors.slice(1);
         var colors3=colors.slice(1,4);
         alert(colors2);
         alert(colors3);
      }

function basicSplice(){
         var colors=["red","blue","pink","yello","white"];
         var removed=colors.splice(0,2);//表删除 即删除前两项
         alert("删除的项:"+removed+"----现在的项:"+colors)
         var inserted=colors.splice(1,0,"black","gray");//表示在位置1处删除0项,插入新加项
         alert("现在的项:"+colors);
      }

</script>
</head>
<body>
  <input type="button" value="排序Sort" onclick="basicSort();" />
  <input type="button" value="concat" onclick="basicConcat();" />
  <input type="button" value="slice" onclick="basicSlice();" />
  <input type="button" value="splice" onclick="basicSplice();" />
</body>
</html>

(0)

相关推荐

  • js 重构Array的sort排序方法

    这个排序是进行两两比较. 拿这个数组进行降序排列var a = [3, 1, 5, 6, 4, 2]; 第一轮比较:用第一个数值和本数组的其他元素进行比对 3比1 3比5 //5大,所以所以进行交换 得a = [5, 1, 3, 6, 4, 2]; 5比6 //交换 得a = [6, 1, 3, 5, 4, 2]; 6比4 6比2 第一轮最终结果 a = [6, 1, 3, 5, 4, 2]; 第二轮比较:用第二个数值和这个数值之后的元素进行对比 1比3 //交换 得a = [6, 3, 1,

  • Array 重排序方法和操作方法的简单实例

    复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" ><head>    <title>重排序方法和操作

  • JS中数组重排序方法

    1.数组中已存在两个可直接用来重排序的方法:reverse()和sort(). reverse()和sort()方法的返回值是经过排序后的数组.reverse()方法会反转数组项的顺序: var values=[1,2,3,4,5]; values.reverse(); alert(values); //5,4,3,2,1 在默认情况下,sort()方法按升序排列数组,sort()方法会调用每个数组项的toString()转型方法,然后比较得到字符串,确定如何排序.即使数组中的每一项都是数值,s

  • 深入JavaScript高级程序设计之对象、数组(栈方法,队列方法,重排序方法,迭代方法)

    继承是OO语言中的一个最为人津津乐道的概念. 许多OO语言都支持两种继承方式:接口继承和实现继承. 接口继承只继承方法签名,而实现继承则继承实际的方法. 如其所述,由于函数没有签名,在ECMAScript中无法实现接口继承. ECMAScript只支持实现继承,而且其实现继承主要是依靠原型链来实现的. 1.使用对象字面量定义对象 var person={}; 使用这种方式创建对象时,实际上不会调用Object构造函数. 开发人员更喜欢对象字面量的语法. 2.有时候需要传递大量可选参数的情形时,一

  • volatile保证可见性及重排序方法

    目录 一.JMM的内存可见性保证 二.volatile的内存语义 1.volatile的特性 2.volatile可见性实现原理 三.指令重排序 一.JMM的内存可见性保证 按程序类型,Java程序的内存可见性保证可以分为下列3类: 单线程程序:单线程程序不会出现内存可见性问题.编译器.runtime和处理器会共同确保单线程程序的执行结果与该程序在顺序一致性模型中的执行结果相同. 正确同步的多线程程序:正确同步的多线程程序的执行将具有顺序一致性(程序的执行结果与该程序在顺序一致性内存模型中的执行

  • js方法数据验证的简单实例

    实例如下: //input标签只能正数字 <input onkeyup="this.value=this.value.replace(/[^1-9]/g,'')" > //只能输入正整数 function CheckNum(thisobj) { if (thisobj.value == "0") { } else { var firstNum = thisobj.value.toString().substring(0, 1); if (thisobj.

  • Java clone方法详解及简单实例

      Java clone方法详解 什么是"clone"? 在实际编程过程中,我们常常要遇到这种情况:有一个对象A,在某一时刻A中已经包含了一些有效值,此时可能 会需要一个和A完全相同新对象B,并且此后对B任何改动都不会影响到A中的值,也就是说,A与B是两个独立的对象,但B的初始值是由A对象确定的.在 Java语言中,用简单的赋值语句是不能满足这种需求的.要满足这种需求虽然有很多途径,但实现clone()方法是其中最简单,也是最高效的手段. Java的所有类都默认继承java.lang.

  • JavaScript中数组Array.sort()排序方法详解

    JavaScript中数组的sort()方法主要用于对数组的元素进行排序.其中,sort()方法有一个可选参数.但是,此参数必须是函数. 数组在调用sort()方法时,如果没有传参将按字母顺序(字符编码顺序)对数组中的元素进行排序,如果想按照其他标准进行排序,就需要进行传一个参数且为函数,该函数要比较两个值,并且会返回一个用于说明这两个值的相对顺序的数字. 1.对数字数组进行由小到大的顺序进行排序. 代码: var arr = [22,12,3,43,56,47,4]; arr.sort();

  • JavaScript中array.reduce()数组方法的四种使用实例

    目录 1.累加和累积乘法 2.获取一个数组的最大值和最小值 3.计算数组中元素出现的频率 4.多个数组的展平 总结 Array.prototype.reduce() 是数组中最强大的方法之一,也是 JavaScript 函数式编程中一个吸引人的特性.但不幸的是,我发现很多朋友不习惯使用它 今天请让我详细介绍一下这个方法,希望对你有帮助. 这是 reduce 的基本用法: var arr = [1, 2, 3]; function reducer(parmar1, parmar2){ } arr.

  • 详解数组Array.sort()排序的方法

    数组sort排序 sort比较次数,sort用法,sort常用 描述 方法sort()将在原数组上对数组元素进行排序,即排序时不创建新的数组副本.如果调用方法sort()时没有使用参数,将按字母顺序(更为精确地说,是按照字符编码的顺序)对数组中的元素进行排序.要实现这一点,首先应把数组的元素都转换成字符串(如果有必要的话),以便进行比较. 如果想按照别的顺序进行排序,就必须提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字.比较函数应该具有两个参数a和b,其返回值如下

  • 数组Array的排序sort方法

    JavaScript中的Array对象有自己的排序方法sort(),对数组中的数据项进行排序,但是有时候排序结果不尽如人意,比如 var arr = [12, 1, 2, 21, 3]; arr.sort(); alert(arr); 得到的结果为 1,12,2,21,3 这是为什么呢?因为JavaScript中的排序默认按照ascii字符代码进行排序,也就是说,数字也是按照它们的字符串形式排序的. var strArr = ['a', '2', 'a2', '2a', 'b', '3']; a

随机推荐