我正在尝试将数组转换为json:
$json = to_json("numbers_array" => \@numbers_array);
print $json;
但我得到的输出是:
{"numbers_array" => ["1","2","3"] }
我正在使用push()添加元素来构建数组.如何转换为json并保留数字类型,以便输出为:
{"numbers_array" => [1,2,3]}
谢谢!
从JSON文档:
您可以通过编号强制类型为数字:
my $x = "3"; # some variable containing a string
$x += 0; # numify it, ensuring it will be dumped as a number
$x *= 1; # same thing, the choice is yours.
Run Code Online (Sandbox Code Playgroud)
我会尝试这样的事情:
$json = to_json({numbers_array => [map { $_ + 0 } @numbers_array]});
print $json;
Run Code Online (Sandbox Code Playgroud)