在 JavaScript 中组合两个字符串数组
combine two string arrays in javascript
我正在寻找一种简单的方法(可以使用jQuery)来组合两个字符串数组:
var a = ["a", "s", "d"];
var b = ["q", "w", "e"];
产生:
var c = ["a q", "s w", "d e"];
a.map((e, i) => e + ' ' + b[i])
Tushar做对了,可能是最好和最有效的方法
试试这个(在控制台中检查输出):
var a = ["a", "s", "d"]; //add or remove items
var b = ["q", "w", "e"]; //add or remove items
if(a.length>b.length) {
var biggest = a.slice();
var smallest = b.slice();
} else {
var biggest = b.slice();
var smallest = a.slice();
}
var c = biggest.map(function(num, i) {
if(i < smallest.length) return num + " " + smallest[i];
return num;
});
console.log(c);
//CHECK OUTPUT IN CONSOLE
这允许数组的大小不同,并且仍然产生相同的结果。否则,只需映射a
执行条件b
这是一个现场演示。
如果数组长度相等a and b
那么你可以试试这个。
var a = ["a", "s", "d"];
var b = ["q", "w", "e"];
var c = [];
for (var i=0;i<a.length; i++) {
val = a[i] + " " + b[i];
c.push(val)
}
console.log(c)
你可以使用Array.prototype.map:
var a = ["a", "s", "d"];
var b = ["q", "w", "e"];
var c = a.map(function(item, i) {
return item + ' ' + b[i]
})
或 Array.prototype.reduce:
var c = a.reduce(function(prev, item, i) {
return prev.concat(item + ' ' + b[i])
}, [])
无论你更喜欢什么。如果你在ES2015友好的世界中,那么使用箭头函数会让它变得更好:
// map
var c = a.map((item, i) => item + ' ' + b[i])
// reduce
var c = a.reduce((prev, item, i) => prev.concat(item + ' ' + b[i]), [])
相关文章:
- jsf中两个字符串的颜色代码差异
- 可以't在JavaScript中比较两个字符串
- jQuery在两个字符串标识符之间选择HTML
- 为什么脚本标记被分解为两个字符串
- 比较Javascript中的两个字符串时出错
- 如何检查两个字符串是否具有相同的字符,包括特殊字符
- Javascript正则表达式来比较两个字符串
- 使用Javascript获取两个字符串之间的字符串数组
- 如何比较两个字符串并删除jquery中的元素
- 如何在 javascript 中使用正则表达式在其他两个字符串之间找到一个字符串
- 删除两个字符串正则表达式之间的所有内容
- Javascript Regex匹配两个字符串之间的子字符串,但子字符串可以包含DOT(.)
- 在jQuery或JavaScript中获取两个字符串之间的文本
- 为什么不是'当试图使用Ajax和外部PHP文件发布内容时,我的表单工作不正常,该文件接收两个字符串
- 比较javascript/jquery中的两个字符串
- 如何在javascript中无空格地追加两个字符串
- 函数,返回javascript中两个字符串数组的差值
- 在javascript中组合使用连字符连接的两个字符串
- 如何在anular.js视图中比较两个字符串
- 替换两个字符串之间的多行文本