chakra-core/ChakraCore

Make number serialization compatible with V8 (and new IETF spec draft)

Open

#149 aperta il 20 gen 2016

Vedi su GitHub
 (20 commenti) (0 reazioni) (0 assegnatari)JavaScript (1374 fork)batch import
BugCompatibilitySeverity: 2Suggestionhelp wanted

Metriche repository

Star
 (9000 star)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

In order to create signed JavaScript objects, you need to normalize data.

The JCS specification https://cyberphone.github.io/openkeystore/resources/docs/jcs.html#ECMAScript_Compatibility_Mode accomplish this "automatically" by relying on ES6 for property order (which Chakra implements), but also depends on the extended number formatting algorithm used in the Google V8 engine which after testing with 100 million of random and selected values appears to be used by Chrome, Firefox, and Safari as well as "node.js".

Browser test program: http://webpki.org/ietf/es6numberbrowsertest.html

10 million value test file: http://webpki.org/ietf/es6testfile.txt

Although JCS does not (a this stage) represent a standard, the core concept will most likely become a de-facto standard due to its simplicity.

Guida contributor