编程语言
首页 > 编程语言> > 在JavaScript中进行字符串构建/连接的最佳方法是什么?

在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,您可以使用

> Template strings

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