3 ms·
Binary File Parsing revisited using Javascript
- carbonica 15y agoNot having int64/uint64 is kind of a deal-breaker for any such library. Which means, in JavaScript, a big integer library. I don't see one.
- vjeux 15y agoI haven't see much int64 in the binary files I've been working on so far. Do you have any examples? It is possible to make an Integer64 class, the downside is the lack of ability to overload default operators such as +, *, < ... That is annoying but not deal-breaking
- spacejunkie 15y agoIt seems that this library relies on hash keys being returned in the same order that they appear in a literal hash constructor. I.e., if var x = { "b":3, "a":10 }, then for (n in x) will _always_ assign n to "b" first before assigning it to "a". Is this something that is guaranteed by javascript?
- vjeux 15y agoAll the browsers use the correct order for non integer keys. So unless you name your key "123" it will work. See this bug report for more lengthy details http://code.google.com/p/v8/issues/detail?id=164 http://code.google.com/p/v8/issues/detail?id=164
- carussell 15y ago> Is this something that is guaranteed by javascript? In theory? No. In practice? ... Still no, if you use delete. https://developer.mozilla.org/en/JavaScript/Reference/Operators/Special/delete#Cross-browser_issues https://developer.mozilla.org/en/JavaScript/Reference/Operat...
- kleiba 15y agoAlso compare to Emacs' bindat package: http://www.gnu.org/software/emacs/elisp/html_node/Byte-Packing.html http://www.gnu.org/software/emacs/elisp/html_node/Byte-Packi... It seems that the seek & tell example from this blog post could mostly be implemented in bindat through the mere datatype definitions, as they allow for variable length sequences and for skip operations.