说我有以下数组:
const arr = [ 'a,b,c', 'd,e,f', 'g,h,i' ];
我想去
[ 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i' ]
我目前正在使用reduce https://jsbin.com/xejedexada/edit?js,console
arr.reduce((a,c) => (typeof a == 'object' ? a : a.split(',')).concat(c.split(',')));
但是我想知道是否有更好的方法来做到这一点。
答案 0 :(得分:1)
您可以使用.join()
和.split()
方法:
const arr = [ 'a,b,c', 'd,e,f', 'g,h,i' ];
const result = arr.join().split(",");
console.log(result);
.as-console-wrapper { max-height: 100% !important; top: 0; }
参考:
答案 1 :(得分:1)
使用reduce方法和 initialSize=20
maxTotal=100
minIdle=20
maxWaitMillis=45000
minEvictableIdleTimeMillis=3600000
validationQueryTimeout=2
removeAbandonedTimeout=10
removeAbandonedTimeout=60
removeAbandonedOnBorrow=true
accessToUnderlyingConnectionAllowed=true
testOnBorrow=true
testWhileIdle=true
logAbandoned=true
defaultQueryTimeout=120
以逗号分隔字符串
split
答案 2 :(得分:0)
只需使用join(',')
和split(',')
,就不需要减少操作:
const arr = [ 'a,b,c', 'd,e,f', 'g,h,i' ];
var res = arr.join(',').split(',');
console.log(res);
答案 3 :(得分:0)
简单地concat
分裂的子数组
const arr = [ 'a,b,c', 'd,e,f', 'g,h,i' ];
console.log( [].concat(...arr.map(a=>a.split(','))) )