我正在尝试将我的字符串xyz加倍到JS中的xxyyzz但无法让它正确返回。我做错了什么?
<script>
string=["xyz"];
for (var i=0;i<string.length;i++)
{
document.write(string[i]*2);
}
</script>
答案 0 :(得分:4)
var string = "xyz".split('').map(function(s){return s+s}).join('');
我喜欢使用数组映射而不是for循环。对我来说似乎更清洁。
答案 1 :(得分:0)
正确的方法是将字符串添加到一起(连接),而不是使用乘以2的字符串。见下文:
<script type="text/javascript">
var string = ['xyz'];
for (var i = 0, len = string.length; i < len; i++) {
document.write(string[i] + string[i]);
}
</script>
答案 2 :(得分:0)
一些问题:
string
,将string.length
的值设为1,因为它是元素数我是这样做的:
var string = "xyz";
var newString = "";
for (var i = 0; i < string.length; i++)
newString += string[i] + string[i];
document.write(newString);
答案 3 :(得分:0)
你没有声明一个字符串,你声明了一个长度为1的字符串数组。
您是数组(string[i]*2
)的乘法位置,尝试连接(string[i] + string[i]
)。
这应该有效:
var string = 'xyz';
for (var i = 0, len = string.length; i < len; i++) {
document.write(string[i] + string[i]);
}