在哪里可以找到用于将Perl数据结构转换为JavaScript的Perl模块?
例如,这是我的代码(梅森):
% # convert our @cti data structure into a javascript one
var cti = [
% foreach my $cti_category (@cti) {
{
label: "<% $cti_category->{'label'} %>",
value: "<% $cti_category->{'value'} %>",
children: [
% foreach my $cti_type (@{$cti_category->{'children'}}) {
{
label: "<% $cti_type->{'label'} %>",
value: "<% $cti_type->{'value'} %>",
},
% }
]
},
% }
];
有这个模块吗?
JSON 代表 JavaScript Object Notation,这是您正在寻找的格式。
不幸的是,你正在寻找的模块都不在Perl核心中,但它们在CPAN上可用,正如快速搜索所揭示的那样。
我实际上建议安装JSON::Any作为包装器,以及JSON::XS(如果你有C编译器)或JSON和JSON::Syck之一。JSON::Any 在其他几个 JSON 模块之上提供了一个接口类(您可以选择,也可以让它从已安装的模块中进行选择),该接口类与您最终使用的模块无关。这样,如果你的代码需要移植到其他地方,并且(比如)目标机器可以安装JSON::XS,而你不能,你可以在没有任何额外代码的情况下获得性能提升。
use JSON::Any;
my $j = JSON::Any->new;
$json = $j->objToJson($perl_data);
这样。
查看 JSON 或 JSON::XS。
为了详细说明,JSON是"JavaScript对象表示法",上面的两个模块将perl数据结构转换为该格式。
模块将转换数据结构 - 它基本上是一个往返 JSON 序列化程序。
JSON !
该模块使用 JSON::XS 或 JSON::P P 将 Perl 数据结构转换为 JSON,反之亦然。