2013-09-22 197 views
0

我已经开始搞乱javascript了,最近偶然发现了一些问题。将字符串转换为数字Javascript

我允许我的用户在文本字段中插入一系列由空格分隔的数字。我正在尝试从文本字段读取字符串并将数字存储在数组中。但是,我不愿意添加这些0。我反复通过我的代码,但我找不到什么错误。

的代码:

function get_input(str) 
    { 
    var arr = []; 
    var elem=0; 
    for(var i=0,j=1; i<str.length ;i++,j++) 
     { 
      if (j == str.length) {elem += str[i]; 
      arr.push(elem); 
      return arr;} 
     else if (str[j]== " ") 
      { 
      elem *=10; 
      elem +=str[i]; 
      arr.push(elem); 
      elem=0; 
      i++; 
      j++ 
      } 
     else 
      { 
      elem *=10; 
      elem += str[i]; 

      } 
    } 
    return arr; 
    } 

,例如为输入:123 45 6 输出为:10203 * 405 * 06 *

  • 我把*只看到在该元件array,

帮助将不胜感激。

回答

5
function get_input(str){ 

    var a = str.split(' '); 

    for(var i = 0; i < a.length; i++){ 

    a[i] = parseFloat(a[i]); 

    } 

    return a; 

} 

击穿

  • 使用split方法,我们填充与由' '(空格)分隔符分隔的字符串的数组。
  • 然后我们循环遍历数组,以便将结果解析为Numbers。如果这不是必需的(即你对数字表示为字符串感到满意),那么你不需要额外的步骤。
  • 然后我们返回数组。
+0

有没有什么我错过了这种语言,当我不明白我:int部分? – magyar1984

+0

@ magyar1984实际上这是一个错字。最近写了一些Actionscript ...道歉。 – shennan

+0

我只是好奇,今天之前我从未见过一块AS;) – magyar1984