在JavaScript中,加入"很多"字符串在一起,使用连接运算符(+
),将数据框作为数组然后加入,还是完全做其他事情是更惯用的?
例如:
var a = '1', b = '3', c = '3', d = '7';
a + b + c + d // => "1337"
// VS
[a, b, c, d].join('') // => "1337
// VS
// ... something else?
答案 0 :(得分:3)
在第一种情况下,当您以字符串形式执行时,此处的数据类型仅为字符串。字符串中的操作更容易,在这种情况下保持相同的数据类型:
a + b + c + d
但是当你通过将字符串转换为数组然后使用join()
函数来连接字符串时,这是一项繁琐的工作。您正在分配一个新的内存空间来创建这些字符串的数组,然后您在它们上应用join()
函数,这肯定会使本机运算符的本机字符串函数性能下降。
[a, b, c, d].join('')
我并不是说数组函数不是原生函数,而是你将它们从一种形式转换为另一种形式,然后在其上应用其他操作,这使它更复杂。
此外,我想在plalx添加评论,在某些浏览器中,join()
功能明显更快。所以它还取决于浏览器。