Je vois quelque chose que je ne comprends pas lorsque j'utilise l'API Google Maps. J'ai le code suivant pour tirer la fenêtre ...Google maps javascript issue
var bounds = map.getBounds();
var viewport = {
top: bounds.getNorthEast().lat(),
right: bounds.getNorthEast().lng(),
bottom: bounds.getSouthWest().lat(),
left: bounds.getSouthWest().lng()
};
Transforme que les rendements viewport.top ...
57.220445088498764 {
toJSON : function(key) { return this.valueOf(); } }
Quelqu'un peut-il me expliquer ce que cela est? Je ne comprends pas complètement les prototypes js, mais basé sur ma compréhension limitée, un prototype js est une fonction attachée à une instance d'un objet. Puisqu'un nombre est un objet, Google a-t-il placé une fonction prototype appelée 'toJSON' sur tous les objets qu'il retourne?
Comment puis-je me débarrasser de cela pour que je finisse avec simplement le numéro 57.220445088498764?
J'essaye d'utiliser le json2.js JSON.stringify, et il ne rend pas JSON correct en raison de cette fonction bizarre.
'delete Number.prototype.toJSON' –
Quel est le problème avec la façon dont les choses fonctionnent maintenant? Avoir une fonction supplémentaire sur le prototype de nombre ne devrait pas faire de mal (ou du moins pas quelque chose que vous rencontreriez normalement). Se débarrasser de cette fonction peut être une très mauvaise idée, car d'autres parties de l'API Google peuvent s'y fier. – Pointy