javascript - L'existence ou non d'une chaîne pour un élément de données est plus efficace qu'un objet
滿天的星座2017-05-24 11:32:23
0
2
920
Lors du développement de petits programmes ou de certains frameworks, vous rencontrerez de nombreux rappels de requêtes qui sont des chaînes. Est-ce parce que les chaînes ont de meilleures performances que les objets et json ?
Parce que. . Quoi qu'il en soit, la réponse en arrière-plan est une chaîne. Donc js 在收到 object 的时候,也是一串 json 的字符串。然后,js doit analyser cette chaîne en un objet. Les performances sont nettement meilleures que celles d'une corde ordinaire, mais l'avantage en termes de performances est presque négligeable. Après tout, s’il existe des structures de données complexes, les chaînes ordinaires ne peuvent pas répondre aux besoins.
La raison est très simple : il existe différents langages back-end, et les différents Objets envoyés peuvent ne pas être traités directement comme des objets JS par le JS front-end.
Nous devons donc utiliser une certaine représentation d'objet paradigme standard pour convertir différents types d'objets en objets que JS peut comprendre.
Peut-être avez-vous deviné que ce paradigme est JSON - une représentation d'objet (sous forme de chaîne)
🎜De cette façon, n'importe quel langage backend peut convertir son objet en JSON (à l'aide d'une bibliothèque ou en l'écrivant vous-même) puis l'envoyer au front-end, afin que le front-end puisse facilement convertir JSON en objets JS. 🎜
🎜Vous pouvez donc voir : 🎜
🎜Différentes implémentations de Obejct dans plusieurs langages => objets JSON =>
🎜Il en va de même pour l’inverse. 🎜
🎜Bien sûr, il existe non seulement du JSON, un paradigme standard, mais aussi de nombreux (xml, etc.) 🎜
🎜
🎜Ou vous pouvez penser différemment : 🎜
🎜L'Objet d'arrière-plan est modulé en Chaîne JSON puis envoyé au front-end. Après l'avoir reçu, le front-end le démodule en Objet JS🎜
🎜
🎜En ce qui concerne les performances que vous avez mentionnées, les opérations sur les chaînes sont généralement beaucoup plus rapides que certaines opérations sur les objets. 🎜
🎜Cependant, les objets ont des relations d'inclusion hiérarchiques et plusieurs types de données, que les paramètres de chaîne n'ont pas. 🎜
Parce que. . Quoi qu'il en soit, la réponse en arrière-plan est une chaîne. Donc
js
在收到object
的时候,也是一串json
的字符串。然后,js
doit analyser cette chaîne en un objet. Les performances sont nettement meilleures que celles d'une corde ordinaire, mais l'avantage en termes de performances est presque négligeable. Après tout, s’il existe des structures de données complexes, les chaînes ordinaires ne peuvent pas répondre aux besoins.L'arrière-plan ne peut pas transmettre
Objet
directement
.直接
传Object
的。原因很简单:后台语言五花八门,发过来的五花八门的 Object 可能前端的 JS 无法直接当成JS对象对待。
因此要借助某种对象表示的
标准范式
来把不同种类的对象转化成JS能理解的对象。或许你已经猜到了这种范式就是
JSON
———— 一种对象表示法(以字符串形式)这样,任何的后台语言,都可以把它的对象转成
JSON
(借助库或者自己写)然后发给前端,这样前端可以很方便的把 JSON 转化成 JS对象。于是你可以看到:
多语言不同的
Obejct
实现 =>JSON
=>JavaScript
对象反过来也一样。
当然 不仅仅只有 JSON 这一种标准范式,还有许多(xml等等)
或者你可以换一种思维:
后台的
La raison est très simple : il existe différents langages back-end, et les différents Objets envoyés peuvent ne pas être traités directement comme des objets JS par le JS front-end.Object
调制成JSON字符串
然后发往前端。前端收到后 解调成
JS Object
Nous devons donc utiliser une certaine représentation d'objet
paradigme standard
pour convertir différents types d'objets en objets que JS peut comprendre.Peut-être avez-vous deviné que ce paradigme est
🎜De cette façon, n'importe quel langage backend peut convertir son objet enJSON
- une représentation d'objet (sous forme de chaîne)JSON
(à l'aide d'une bibliothèque ou en l'écrivant vous-même) puis l'envoyer au front-end, afin que le front-end puisse facilement convertir JSON en objets JS. 🎜 🎜Vous pouvez donc voir : 🎜 🎜Différentes implémentations deObejct
dans plusieurs langages => objetsJSON
=> 🎜Il en va de même pour l’inverse. 🎜 🎜Bien sûr, il existe non seulement du JSON, un paradigme standard, mais aussi de nombreux (xml, etc.) 🎜 🎜 🎜Ou vous pouvez penser différemment : 🎜 🎜L'Objet
d'arrière-plan est modulé enChaîne JSON
puis envoyé au front-end.Après l'avoir reçu, le front-end le démodule en
Objet JS
🎜 🎜 🎜En ce qui concerne les performances que vous avez mentionnées, les opérations sur les chaînes sont généralement beaucoup plus rapides que certaines opérations sur les objets. 🎜 🎜Cependant, les objets ont des relations d'inclusion hiérarchiques et plusieurs types de données, que les paramètres de chaîne n'ont pas. 🎜