2008-09-25 21 views
4

我在哪裏可以找到用於將Perl數據結構轉換爲JavaScript的Perl模塊?我在哪裏可以找到用於將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'} %>", 
          }, 
%  } 
          ] 
      }, 
% } 
      ]; 

有沒有這個模塊?

+0

既然大家都說過JSON,那麼在你的問題中加入json標籤呢? :D – skiphoppy 2008-09-25 18:46:51

回答

7

結賬JSONJSON::XS

再詳細一點,JSON是「JavaScript Object Notation」,上述兩個模塊將perl數據結構轉換爲該格式。

0

JSON

該模塊使用JSON :: XS或JSON :: PP將Perl數據結構轉換爲JSON,反之亦然。

0

JSON模塊將轉換數據結構 - 它基本上是從/到JSON串行器。

15

JSON代表JavaScript Object Notation,它是您要查找的格式。

不幸的是,您正在尋找的模塊都不在Perl核心中,但它們可在CPAN上使用,因爲快速search會顯示。

其實我建議安裝JSON::Any作爲包裝,以及JSON::XS(如果你有一個C編譯器)或JSON之一,JSON::Syck如果你不這樣做。 JSON :: Any提供了一個interface class在幾個其他JSON模塊之上(您可以選擇,或者讓它從已安裝的內容中挑選)與您使用的哪個模塊無關。這樣,如果你的代碼需要被移植到其他地方,並且(比方說)目標機器可以在你不能的時候安裝JSON :: XS,你可以在沒有任何額外代碼的情況下獲得性能提升。

use JSON::Any; 

my $j = JSON::Any->new; 

$json = $j->objToJson($perl_data); 

像這樣。

相關問題