react polyfill json polyfills

react - JFS polyfill: JSON 2 o JSON 3?



polyfills angular (3)

Necesito un polyfill JSON para admitir IE 7 y algunos modos IE 8 e IE 9. ¿Debo elegir JSON 2 o JSON 3 ? Obviamente, JSON 3 es una implementación más moderna, pero por ejemplo, un sitio como html5please ni siquiera lo menciona y recomienda JSON 2.


Me preguntaba lo mismo. JSON3 dice :

Cambios de JSON 2

JSON 3 ...

  • Serializa correctamente los objetos primitivos de envoltura ( Issue # 28 ).
  • Lanza un TypeError al serializar estructuras cíclicas (JSON 2 se repite hasta que la pila de llamadas se desborda).
  • Utiliza pruebas de características para detectar implementaciones JSON nativas rotas o incompletas (JSON 2 solo verifica la presencia de las funciones nativas). Las pruebas solo se ejecutan una vez en tiempo de ejecución, por lo que no hay un costo de rendimiento adicional al analizar o serializar valores.

A diferencia de JSON 2, JSON 3 no ...

  • Agregue los métodos toJSON() a los prototipos Boolean , Number y String . Estos no son parte de ningún estándar, y se hacen redundantes por el diseño de la implementación stringify() .
  • Agregue los métodos Date.prototype toJSON() o toISOString() a Date.prototype . Vea la nota sobre la serialización de la fecha a continuación.

bestiejs.github.com/json3/

html5please :

JSON 3 es un polyfill compatible con casi todas las plataformas JavaScript. Es un reemplazo directo para JSON 2 que usa pruebas de características para detectar implementaciones JSON nativas incompletas y rotas, admite cargadores de módulos asíncronos y has optimizadores de software, y está diseñado para estándares de especificación.

JSON 2 es un polyfill alternativo más antiguo de Douglas Crockford.


Utilice json2.js si desea mejorar el rendimiento de su página en IE7 (y posiblemente 8). Estuve felizmente usando json3 durante meses y luego vi esta pregunta e hice algunas investigaciones. Todos los jsperf se realizaron 1-2 veces más rápido con json2.js en mi máquina virtual IE7.

Un ejemplo:

http://jsperf.com/json-vs-jquery-json/2


html5please ha actualizado su página JSON para incluir JSON 3 como el polyfill principal para su uso, con JSON 2 tomando el asiento trasero como el reemplazo anterior.