【发布时间】:2014-09-12 12:46:34
【问题描述】:
这里有一行代码,我希望将'123' 作为字符串值。
然后在 split() 和 join() 的帮助下,它将变成一个类似'1,2,3' 的字符串。
然后我想用1,2....之类的实际数字替换所有数字字符串值。
为此,我使用了一个名为 k 的变量,并为其赋予初始值 1。
我在替换中使用了增量运算符来更改 k 的值。
但它不起作用。也许我弄错了 string.replace() 如何执行替换操作。
我也尝试使用parseInt('$1') 它也没有工作。
控制台给出 1,1,1 的输出。没有发生增量操作。
<html>
<body>
<script>
(function(){
var k=1;
console.log(prompt('input here').split('').join(',').replace(/(\d)/g,k++));
})();
</script>
</body>
</html>
【问题讨论】:
-
您的意思是要将
"123"转换为数字数组[1, 2, 3]? -
yes.something like that but using a single line of code.
-
如果您不想增加数字,
var arr = '123'.split('').map(Number);是我所知道的最简单的解决方案。 -
var a = "123".split('').map(function(item) { item = parseInt(item, 10); return ++item; });为我工作 -
或者,在重新阅读时,它实际上是不是并且 OP 不想创建递增数字?
标签: javascript