摘要
写这篇主要是发现 javascript 中 json 和我理解中 java 语言的 map 存储是不同的
javascript 中 object
本质是 array, 存储进去的数据是堆栈, 有顺序的概念
- const value = {a: 1, b:1};
- const value1 = {b:1, a:1};
- value === value1 // false
- Object.keys(value) // [a, b]
- Object.keys(value1) // [b, a]
可以看出来 value, value1 的 key 顺序是不同的, 遍历出来也是不同的
java 中的 map
本质是存储地址
- value = {a: 1, b:1};
- value1 = {b:1, a:1};
- value == value1 // true, 地址是相等的, 都是指向 { a:1, b:1 } 这个变量
- value.isEqual(value1) // false
遍历出来 value , value1 的 key 顺序是一样的
结语
一直以为 javascript 是借鉴 java 的思想, 就错误的以为是一样的, 还是有不少不同的
来源: http://www.bubuko.com/infodetail-2523652.html