2017-05-16 14 views
-5

まずはお伝えします 英語は話せませんが、JavascriptにPerlパックを実装してnode.jsモジュールを作る方法についての情報を得たいと思います。javascript Perlパック

これを行うには、Perlパックに関する詳細情報を入手したいと思います。特に、私が特に知りたい情報は "C、H *、N"です。

また、私がjspackについてさらに詳しい情報を得ることができれば、すばらしいことになります。

ありがとうございます。

日本語(Japan)

+0

[はperldoc -fパック](http://perldoc.perl.org/functions/pack.html) –

+1

チュートリアルは特にありさまざまな言語などに関する情報を提供するように設計されています。特に、作成者が提供するドキュメントです。 SOはチュートリアルサイトではありませんので、多くの人が恩恵を受けることができる何かを試してみてください。 – Zeke

答えて

0

pack 'C'pack 'N'pack 'H*'はバイトのシーケンスを作成するために使用されます。

my $bytes = pack('C', $uint8); 

# Array of bytes 
var bytes = []; 
bytes.push(uint8); 

# String of bytes 
var bytes = ""; 
bytes += String.fromCharCode(uint8); 

my $bytes = pack('N', $uint32); 

# Array of bytes 
var bytes = []; 
bytes.push((uint32 >> 24) & 0xFF); 
bytes.push((uint32 >> 16) & 0xFF); 
bytes.push((uint32 >> 8) & 0xFF); 
bytes.push((uint32  ) & 0xFF); 

# String of bytes 
var bytes = ""; 
bytes += String.fromCharCode((uint32 >> 24) & 0xFF); 
bytes += String.fromCharCode((uint32 >> 16) & 0xFF); 
bytes += String.fromCharCode((uint32 >> 8) & 0xFF); 
bytes += String.fromCharCode((uint32  ) & 0xFF); 

my $bytes = pack('H*', $hex_str); 

# Array of bytes 
function hexToBytes(hex) { 
    var bytes = []; 
    for (var c = 0; c < hex.length; c += 2) 
     bytes.push(parseInt(hex.substr(c, 2), 16)); 

    return bytes; 
} 

# String of bytes 
function hexToBytes(hex) { 
    var bytes = ""; 
    for (var c = 0; c < hex.length; c += 2) 
     bytes += String.fromCharCode(parseInt(hex.substr(c, 2), 16)); 

    return bytes; 
} 
+0

なぜdownvote? – ikegami

+0

最近、何が起こっているのか分からないけど、それを補うためにアップしています。 –

+0

私は参照でコードをテストしようとしました。ありがとう、問題は解決されました。どうもありがとうございました。 "test url":http://plnkr.co/urgQPFBQ76VSJyuqJy5f –