从字符串定义新变量

时间:2014-12-25 02:04:13

标签: javascript

假设我们的字符串myString定义如下:

var myString = "foo 123";

如何定义来自numbers的新变量myString,以便numbers = 123

编辑:这是一个更精确的程序,说明我如何定义数字。

  1. 如果myString不以“foo”开头,则数字= 0。
  2. 如果myString以“foo”开头,那么数字应该是“foo”之后的第一个数字。例如,如果myString =“foo 12.3 14”,则数字应等于“12.3”。

2 个答案:

答案 0 :(得分:2)

在这种情况下,您可以使用splitparseInt

var string_array = myString.split(" ");
var num = 0;
if ((string_array.length >= 2) && (string_array[0] === "foo"))
  num = parseInt(string_array[1]); 

答案 1 :(得分:0)

哟可以一行:

var num = parseFloat(("foo 12.3 14".match(/^foo (.+)/) || [,0])[1]);

或者两个可读性更高:

var match = "foo 12.3 14".match(/^foo (.+)/),
    num = match ? parseFloat(match[1]) : 0;