代码之家  ›  专栏  ›  技术社区  ›  Mihajlo Supic

将字符串转换为int〔closed〕数组

  •  0
  • Mihajlo Supic  · 技术社区  · 11 年前

    我想转换 "1,2,3" [1,2,3] . 但转换时有一个例外 "" 到阵列。因为我得到 [""] 。这对我的情况无效。所以我需要检查它是数字还是字符串。让我们在代码中看到这一点

    function someWayToParse(some_string) {
        var final_product = [];
    
        var tmp_array = some_string.split(',');
    
        //if some_string == "" tmp_array will result [""];
        if (tmp_array[0].length===0)
            return [];
    
        for (var item in tmp_array)
            final_product.push(parseInt(tmp_array[item], 10));
    
        return final_product;
    }
    
    var stringToParse = "1,2,3";
    
    var array_of_ints = someWayToParse(stringToParse);
    

    我只是在寻找在函数中实现这一点并避免可能的错误的最佳方法。 为了我的好奇心,请提高记忆力。

    1 回复  |  直到 11 年前
        1
  •  4
  •   Tibos    11 年前

    更小的代码是:

    function myConverter(string) {
      if (!string) return [];
      return string.split(',').map(Number);
    }
    
    console.log(myConverter('1,2,3'));