143

在字符串开头添加新值的最快方法是什么?

4

8 回答 8

280
var mystr = "Doe";
mystr = "John " + mystr;

这不适合你吗?

于 2011-05-23T07:30:03.807 回答
154

你可以这样做..

var mystr = 'is my name.';
mystr = mystr.replace (/^/,'John ');

console.log(mystr);

免责声明:http: //xkcd.com/208/


等等,忘记逃生了。 呜呜[taptaptap]eeeeee。

于 2011-05-23T07:32:43.697 回答
56

由于问题是关于什么是最快的方法,我想我会添加一些性能指标。

TL;DR赢家,在很大程度上,是+运营商,不要使用正则表达式

https://jsperf.com/prepend-text-to-string/1

在此处输入图像描述

于 2019-03-29T01:04:43.707 回答
15

ES6:

let after = 'something after';
let text = `before text ${after}`;
于 2016-12-20T14:12:12.630 回答
8

你也可以这样做

"".concat("x","y")
于 2016-08-15T11:15:16.810 回答
7

如果您想使用名为 ES 2015(又名 ES6)或更高版本的 Javascript 版本,您可以使用ES 2015 引入并由一些指南(如Airbnb 的样式指南)推荐的模板字符串

const after = "test";
const mystr = `This is: ${after}`;
于 2016-11-16T17:01:01.600 回答
2

另一种选择是使用join

var mystr = "Matayoshi";
mystr = ["Mariano", mystr].join(' ');
于 2018-09-12T14:25:43.027 回答
0

您可以使用

var mystr = "Doe";
mystr = "John " + mystr;
console.log(mystr)
于 2011-05-23T07:34:18.257 回答