jQuery.merge与concat的区别

简介: 示例如下:s1="123";s2="145";s3 = $.merge(s1,s2);//s3="123",字符串s1 s2不变,默认返回s1s4 = s1.concat(s2);//s4="123145"a1=[1,2,3];a2=[1,4,5];a3 = $.

示例如下:

s1="123";
s2="145";
s3 = $.merge(s1,s2);//s3="123",字符串s1 s2不变,默认返回s1
s4 = s1.concat(s2);//s4="123145"
a1=[1,2,3];
a2=[1,4,5];
a3 = $.merge(a1,a2);//a1=[1,2,3,1,4,5], a3=[1,2,3,1,4,5] 向a1里合并
a4 = s1.concat(s2);//a4=[[1, 2, 3, 1, 4, 5, 1, 4, 5], a1还是[1,2,3,1,4,5]

 

 

其中merge方法

描述: 合并两个数组内容到第一个数组。

  • 添加的版本: 1.0jQuery.merge( first, second )

    • first
      类型:  ArrayLikeObject
      第一个用于合并的数组,其中将会包含合并后的第二个数组的内容。
    • second
      类型:  ArrayLikeObject
      第二个用于合并的数组,该数组不会被修改,其中的内容将会被合并到第一个数组中。

 

$.merge()操作形成一个数组,其中包含两个数组的所有元素。追加到第一个数组中的第二个数组元素的顺序会被保留。

$.merge()函数是破坏性的。它会修改第一个数组的内容,并将第二个数组的内容添加到第一个数组中。

如果您需要保留原始的第一个数组,请在调用$.merge()前拷贝一个出来。幸运的是, $.merge()本身也可以用于拷贝操作:

1
var newArray = $.merge([], oldArray);

此快捷方式创建一个新的,空数组合并了oldArray的内容,有效地克隆了数组。

 

JS代码测试如下:

例子:

Example: 合并两个数组,修改第一个参数的内容。

1
$.merge( [0,1,2], [2,3,4] )

Result:

1
[0,1,2,2,3,4]

Example: 合并两个数组,修改第一个参数的内容。

1
$.merge( [3,2,1], [4,3,2] )

Result:

1
[3,2,1,4,3,2]

Example: 合并两个数组,但是对第一个参数进行拷贝,这样就可以保证原始的内容不被修改。

1
2
3
var first = ['a','b','c'];
var second = ['d','e','f'];
$.merge( $.merge([],first), second);

Result:

1
["a","b","c","d","e","f"]

 

相关文章
|
JavaScript 前端开发 API
vue和jQuery有什么区别
vue和jQuery有什么区别
88 0
|
10月前
|
XML JSON 前端开发
AJAX是什么?原生语法格式?jQuery提供分装好的AJAX有什么区别?
AJAX是什么?原生语法格式?jQuery提供分装好的AJAX有什么区别?
81 0
|
JavaScript 前端开发 API
js和jquery的区别
js和jquery的区别
100 8
|
JavaScript 前端开发
jQuery 和 Zepto 的区别? 各自的使用场景?
jQuery 和 Zepto 的区别? 各自的使用场景?
80 1
|
XML 前端开发 JavaScript
jQuery与javascript的区别+案例 锋芒毕露
jQuery与javascript的区别+案例 锋芒毕露
|
JavaScript 前端开发 API
JavaScript和jQuery的区别
JavaScript和jQuery的区别
|
JavaScript 前端开发
JQuery和JS的区别有哪些?
JQuery和JS的区别有哪些?
90 0
|
JavaScript 前端开发 API
Vue、jquery和angular之间区别
Vue、jquery和angular之间区别
105 2
|
JavaScript 前端开发 API
jquery是什么-是否还有必要学-与JS的区别-学习技巧-文末附资料、案例、作业
jquery是什么-是否还有必要学-与JS的区别-学习技巧-文末附资料、案例、作业
194 0
|
JavaScript 前端开发