在开发小程序或者一些框架时会遇到很多的请求回调都是string,是不是因为string要比object,json他们的性能要优
曾经蜡笔没有小新2017-05-24 11:34:23
因为。。无论怎么样,后台响应的都是字符串。所以 js
在收到 object
的时候,也是一串 json
的字符串。然后,js
需要解析这个字符串成对象。性能肯定是一个普通的字符串好的,但是这种性能的优势几乎可以忽略不计了吧。毕竟有复杂数据结构的话普通字符串是无法解决需求的。
给我你的怀抱2017-05-24 11:34:23
后台是不能不行不可以直接
传 Object
的。
原因很简单:后台语言五花八门,发过来的五花八门的 Object 可能前端的 JS 无法直接当成JS对象对待。
因此要借助某种对象表示的 标准范式
来把不同种类的对象转化成JS能理解的对象。
或许你已经猜到了这种范式就是 JSON
———— 一种对象表示法(以字符串形式)
这样,任何的后台语言,都可以把它的对象转成 JSON
(借助库或者自己写)然后发给前端,这样前端可以很方便的把 JSON 转化成 JS对象。
于是你可以看到:
多语言不同的 Obejct
实现 => Obejct
实现 => JSON
=> JavaScript
=> JavaScript
对象
反过来也一样。
当然 不仅仅只有 JSON 这一种标准范式,还有许多(xml等等)
或者你可以换一种思维:
后台的 Object
调制成 JSON字符串
然后发往前端。
前端收到后 解调成 JS Object
至于你说的性能,一般字符串的操作比对象的某些操作快得多。
不过 对象有层次包含关系还还有多种数据类型,这是字符串参数所没有的。