2

我的代码:

var test = "aa";
test += "ee";
alert(test); 

打印出“aaee”

我怎么能做同样的事情,但添加字符串不是结束,而是开始:像这样:

var test = "aa";
test = "ee" + test;

这是很长的路,但有没有像第一个例子中那样的更短的方法

我想要的是我不能在定义中再次写出初始变量。

4

6 回答 6

8

没有内置运算符可以让您像第一个示例中那样实现此目的。也test = "ee" + test;似乎很不言自明。

于 2012-08-23T06:48:32.380 回答
2

你可以这样做..

test = test.replace (/^/,'ee');

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


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

于 2016-04-21T05:36:12.850 回答
0
var test = "aa";
 alert('ee'.concat(test));
于 2012-08-23T06:49:13.353 回答
0

您有几种可能性,虽然不是很短:

var test = "aa";

// all yield eeaa
result = "ee" + test;
result = test.replace(/^/, "ee");
于 2012-08-23T06:53:41.503 回答
0

你所拥有的,test = "ee" + test;似乎完全没问题,而且没有更短的方法可以做到这一点。

如果你想要一个js解决方案,你可以做类似的事情,

test = test.replace(/^/, "ee");

很多方法可以实现这一点,但test = "ee" + test;似乎是最好的 imo。

于 2012-08-23T06:57:13.797 回答
0

您可以在开头添加一个字符串(如果需要,可以多次添加),直到结果字符串达到您希望使用String.prototype.padStart() 的长度。像这样:

var test = "aa";
test = test.padStart(4, "e");
alert(test);

打印出来

eeaa

var test = "aa";
test = test.padStart(5, "e");
alert(test);

打印出来

eeaa

于 2021-06-20T11:07:43.477 回答