2,用js实现将二维数组格式化转换成树状数组
3,将树结构数据转换为一维数组
4, 数组去重
var obj={"a":1,"b":2} //一个js对象,遵循json格式var arr=[]
arr.push(obj)//将json格式的对象加入到数组中
js数组与json的区别
数组是一种数据结构,是一种容器,js中所有类型的数据都可以添加到数组中,数组中的元素可以通过元素在数组中的索引或者下标获取到。
json是一种通用的数据格式,方便传输。是一种规范吧。
比如你使用百度地图的api,它声明返回json格式的数据,你只需要去了解json规范,就知道怎么去解析他返回给你的数据,而不需要再去进行沟通协商,如何返回数据
这两者不应该放到一起作比较
要比也是json与xml
Js array被认为是一种万能的数据结构,不仅能当作普通的数组来使用,还可以当作一个栈,一个队列,一个哈希表来使用,更多的时候我们只是把它当作一个数组来使用,所以就先从最熟悉的使用场景来回顾下它.
更多操作
源码中描述,数组实现时有两种模式: fast 快模式,slow 慢模式
快模式:内存是连续的,需要开辟一块相对较大点的内存使用
慢模式:内存是分散的
总的来说就是快模式下通过牺牲内存换取性能,慢模式下是通过牺牲性能获取内存,这就是时间换空间、空间换时间的平衡,看谁划算了.
elements变成了一个慢元素哈希表,哈希表的容量为29。