js采用concat和sort将N个数组拼接起来的方法

本文实例分析了js采用concat和sort将N个数组拼接起来的方法。分享给大家供大家参考,具体如下:

这是某个大型企业的面试题扩展得来的,只是一种解法,但是无法确定是否高效,不过效果确实是实现了!

<!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 concatAndSortArray(array1, array2) {
      if (arguments.length < 2) {
        return;
      }
      var arg = null;
      var array = [];
      for (var i = 0; i < arguments.length; i++) {
        arg = arguments[i];
        if (typeof arg === "object" && arg.length > 0) {
          array = array.concat(arg);
        }
      }
      array.sort(function (arg1, arg2) {
        if (arg1 > arg2) {
          return 1;
        } else {
          return -1;
        }
      });
      return array;
    }
    var array1 = [1, 2, 3, 4, 5, 15];
    var array2 = [10, 12, 13, 25, 35];
    var array = concatAndSortArray(array1, array2);
    console.log(array);
  </script>
  <style type="text/css" >
  #tx { line-height:30px; font-weight:bolder; text-align:center; background:#DDDDDD; margin-top:10px;}
  </style>
</head>
<body>
<div id="tx">haha</div>
<hr />
<div id="container">
</div>
</body>
</html>

更多关于JavaScript数组及字符串相关内容感兴趣的读者可查看本站专题:《JavaScript数组操作技巧总结》及《javascript 字符串相关操作汇总》

希望本文所述对大家JavaScript程序设计有所帮助。

时间: 2016-01-18

JS数组合并push与concat区别分析

本文实例讲述了JS数组合并push与concat区别.分享给大家供大家参考,具体如下: 注意 concat 拼写,二者功能很相像,但有两点区别. 先看代码: var arr = []; arr.push(1); arr.push([2, 3]); arr.push(4, 5); arr = arr.concat(6); arr = arr.concat([7, 8]); arr = arr.concat(9, 10); arr.each(function(index, value){ alert

JavaScript模拟数组合并concat

定义和用法 concat() 方法用于连接两个或多个数组. 该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本. 语法 arrayObject.concat(arrayX,arrayX,......,arrayX) 参数 描述 arrayX 必需.该参数可以是具体的值,也可以是数组对象.可以是任意多个. 返回值 返回一个新的数组.该数组是通过把所有 arrayX 参数添加到 arrayObject 中生成的.如果要进行 concat() 操作的参数是数组,那么添加的是数组中的元素,而不是

JavaScript字符串对象的concat方法实例(用于连接两个或多个字符串)

JavaScript concat 方法 concat 方法连接两个或多个字符串,其语法如下: 复制代码 代码如下: str_object.concat(str1, str2, ...) str_object 是需要连接的第一个字符串(对象),str1 是需要连接的第二个字符串,str2 是需要连接的第三个字符串,依次类推,至少需要一个str1. concat 实例 复制代码 代码如下: <script language="JavaScript"> var str = &q

JS Array创建及concat()split()slice()的使用方法

JS Array创建及concat()split()slice()的使用方法 1 var a = new Array(); 2 var b=new Array(20); 3 var c= new Array("red","green","white"); alert(b.length) //20 数组可以根据需要增大或减小.因此, c[3] = "purple"; alert(c.length) //4 如果 c[25]=&q

javascript使用 concat 方法对数组进行合并的方法

在介绍前,抛出一个问题:如何将多个数组合并为一个数组? 以下的分享会分为如下小节: 1.concat方法的基础介绍 2.从实例中感受concat方法 1.concat方法的基础介绍 concat方法用于多个数组的合并.它将新数组的成员,添加到原数组的尾部,然后返回一个新数组,原数组不变. console.log([].concat([1],[2],[3])); // [1, 2, 3] console.log([].concat([[1],[2],[3]])); // [[1], [2], [3

JavaScript使用concat连接数组的方法

本文实例讲述了JavaScript使用concat连接数组的方法.分享给大家供大家参考.具体如下: 下面的代码演示了JS中如何通过concat函数链接多个数组 <!DOCTYPE html> <html> <body> <script> var parents = ["Jani", "Tove"]; var brothers = ["Stale", "Kai Jim", &quo

javascript concat数组累加 示例

复制代码 代码如下: <script type="text/javascript"> var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" var arr2 = new Array(3) arr2[0] = "James" arr2[1] = "Adrew" arr2[2] = &

javascript中数组的concat()方法使用介绍

复制代码 代码如下: <html> <head> <title>数组的concat()方法</title> <script> /* 数组的concat()方法: 1.该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本. 2.返回一个新的数组.该数组是通过把所有 arrayX 参数添加到 arrayObject 中生成的. 如果要进行 concat() 操作的参数是数组,那么添加的是数组中的元素,而不是数组. */ var arr1 = [

浅谈JavaScript的push(),pop(),concat()方法

push 方法 将新元素添加到一个数组中,并返回数组的新长度值. arrayObj.push([item1 [item2 [. . . [itemN ]]]]) 参数 arrayObj 必选项.一个 Array 对象. item, item2,. . . itemN 可选项.该 Array 的新元素. 说明 push 方法将以新元素出现的顺序添加这些元素.如果参数之一为数组,那么该数组将作为单个元素添加到数组中.如果要合并两个或多个数组中的元素,需要使用 concat 方法. 版本要求在:5.5

Javascript连接多个数组不用concat来解决

第一种方法就是大家熟知的concat,但是这个方法有一个确定就是该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本. 如果只是想把一个新数组的元素加到现有数组中,我们还要为其重新赋值,其实存在有一点点资源的浪费.简单的说,我们要为新创建的数组分配新的内存空间,并且把arr1重新指向这个新内存地址,那么原来那个内存中的数组呢,嘿嘿 那就要看浏览器能不能正确回收喽. 如下例: 复制代码 代码如下: var arr1 = [1,2,3]; var arr1 = arr1.concat([4,5

深入理解javascript中concat方法

最近在恶补js知识的时候,总是会因为js强大的语法而感到震撼.因为以前对前端方面的疏忽,导致了一些理解的错误.因此痛改前非,下定决心,不管做什么事情,都要有专研的精神. 在介绍前,抛出一个问题:如何将多个数组合并为一个数组? 以下的分享会分为如下小节: 1.concat方法的基础介绍 2.从实例中感受concat方法 1.concat方法的基础介绍 concat方法用于多个数组的合并.它将新数组的成员,添加到原数组的尾部,然后返回一个新数组,原数组不变. console.log([].conca

JavaScript中使用concat()方法拼接字符串的教程

这种方法将两个或多个字符串,并返回一个新的单字符串. 语法 string.concat(string2, string3[, ..., stringN]); 下面是参数的详细信息: string2...stringN : 这些是要连接字符串. 返回值: 返回一个连接字符串. 例子: <html> <head> <title>JavaScript String concat() Method</title> </head> <body>

JavaScript 利用StringBuffer类提升+=拼接字符串效率

复制代码 代码如下: <!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> <meta http-equiv=&qu

javascript中一些util方法汇总

javascript中一些util方法汇总 /***************原生对象工类方法****************/ /** * 判断非空 * @param obj * @returns {boolean} */ function isEmpty(obj) { if (obj == undefined || obj == null || new String(obj).trim() == '') { return true; } else { return false; } } /**

javascript中JSON对象与JSON字符串相互转换实例

本文实例讲述了javascript中JSON对象与JSON字符串相互转换实现方法.分享给大家供大家参考.具体如下: <script type="text/javascript"> // 根据JSON对象的属性的名称获取属性的值 var jsonObj = { name: "jxqlovejava" }; // JSON对象 console.log(jsonObj.name); // "jxqlovejava" var jsonStr

在javascript中如何得到中英文混合字符串的长度

有同事在公司的OA上发了个贴子,介绍在javascript中如何得到中英文混合字符串的长度. 用的是正则表达式. 复制代码 代码如下: var str = "坦克是tank的音译"; var len = str.match(/[^ -~]/g) == null ? str.length : str.length + str.match(/[^ -~]/g).length ; 我查了一下书,有点明白了: 西文常用字符集由空格" "(0x20)到"~"

Javascript中的call()方法介绍

在Mozilla的官网中对于call()的介绍是: 复制代码 代码如下: call() 方法在使用一个指定的this值和若干个指定的参数值的前提下调用某个函数或方法. Call() 语法 复制代码 代码如下: fun.call(thisArg[, arg1[, arg2[, ...]]]) Call() 参数 thisArg 复制代码 代码如下: 在fun函数运行时指定的this值.需要注意的是,指定的this值并不一定是该函数执行时真正的this值,如果这个函数处于非严格模式下,则指定为nul

JavaScript 中调用 Kotlin 方法实例详解

JavaScript 中调用 Kotlin 方法实例详解 Kotlin 编译器生成正常的 JavaScript 类,可以在 JavaScript 代码中自由地使用的函数和属性 .不过,你应该记住一些微妙的事情. 用独立的 JavaScript 隔离声明 为了防止损坏全局对象,Kotlin 创建一个包含当前模块中所有 Kotlin 声明的对象 .所以如果你把模块命名为 myModule,那么所有的声明都可以通过 myModule 对象在 JavaScript 中可用.例如: fun foo() =

javascript中checkbox使用方法简单实例演示

演示一个小小的例子:在购物车里面,我们能够勾选自己所选的商品,然后能够显示出相应的价格. 1.首先显示出相应的界面:   相关代码: <body> 商品列表:<br/> 笔记本电脑<input type="checkbox" name="mm" value="3000" onclick="chose(this)" />3000 台式机<input type="checkbox

JavaScript中的splice方法用法详解

JavaScript中的splice主要用来对js中的数组进行操作,包括删除,添加,替换等. 注意:这种方法会改变原始数组!. 1.删除-用于删除元素,两个参数,第一个参数(要删除第一项的位置),第二个参数(要删除的项数) 2.插入-向数组指定位置插入任意项元素.三个参数,第一个参数(插入位置),第二个参数(0),第三个参数(插入的项) 3.替换-向数组指定位置插入任意项元素,同时删除任意数量的项,三个参数.第一个参数(起始位置),第二个参数(删除的项数),第三个参数(插入任意数量的项) 示例:

JavaScript中数组Array方法详解

ECMAScript 3在Array.prototype中定义了一些很有用的操作数组的函数,这意味着这些函数作为任何数组的方法都是可用的. 1.Array.join()方法 Array.join()方法将数组中所有元素都转化为字符串并连接在一起,返回最后生成的字符串.可以指定一个可选的符号或字符串在生成的字符串中来分隔数组的各个元素.如果不指定分隔符,默认使用逗号.注意:此方法不会改变原始数组 var arr = ['a', 'b', 'c']; console.log(arr.join());