在JavaScript中进行字符串构建/连接的最佳方法是什么?
作者:互联网
TL; DR
JavaScript支持替换/插值吗?
概观
我正在研究一个JS项目,随着它越来越大,保持良好状态的字符串变得越来越困难.我想知道在JavaScript中构造或构建字符串的最简单和最常规的方法是什么.
我的经验到目前为止:
String concatenation starts looking ugly and becomes harder to maintain as the project becomes more complex.
在这一点上最重要的是简洁性和可读性,想想一堆运动部件,而不仅仅是2-3个变量.
同样重要的是,它受到当今主流浏览器的支持(即至少支持ES5).
我知道JS连接的简写:
var x = 'Hello';
var y = 'world';
console.log(x + ', ' + y);
和String.concat功能.
我正在寻找一些更整洁的东西.
Ruby和Swift以一种有趣的方式完成它.
ruby
var x = 'Hello'
var y = 'world'
print "#{x}, #{y}"
迅速
var x = "Hello"
var y = "world"
println("\(x), \(y)")
我认为在JavaScript中可能会有类似于sprintf.js的东西.
题
这可以在没有任何第三方库的情况下完成吗?如果没有,我可以使用什么?
解决方法:
使用ES6,您可以使用
var username = 'craig';
console.log(`hello ${username}`);
ES5及以下:
>使用操作符
var username = 'craig';
var joined = 'hello ' + username;
> String的concat(..)
var username = 'craig';
var joined = 'hello '.concat(username);
或者,使用Array方法:
> join(..)
:
var username = 'craig';
var joined = ['hello', username].join(' ');
>甚至发烧友,reduce(..)
加上以上任何一项:
var a = ['hello', 'world', 'and', 'the', 'milky', 'way'];
var b = a.reduce(function(pre, next) {
return pre + ' ' + next;
});
console.log(b); // hello world and the milky way
标签:javascript,string,concatenation,conventions 来源: https://codeday.me/bug/20190929/1831342.html