Jsonnet 的标准库提供了一个:std.parseInt(str)函数,可以从给定的输入字符串中解析一个带符号的十进制整数。例如:
std.parseInt("123") // yields 123
std.parseInt("-456") // yields -456
Run Code Online (Sandbox Code Playgroud)
参考:http : //jsonnet.org/docs/stdlib.html
kgr*_*ney -1
Jsonnet 标准库相当薄,但这里是执行此转换的 Jsonnet 函数的示例。
{
string_to_int(s)::
local char_to_int(c) = std.codepoint(c) - std.codepoint("0");
local digits = std.map(char_to_int, std.stringChars(s));
std.foldr(function(x,y) x+y,
std.makeArray(std.length(digits),
function(x) digits[std.length(digits)-x-1]*std.pow(10, x)),
0),
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
622 次 |
| 最近记录: |