javascript es6 set feature
javascript es6 set feature
我正在使用Set,我可以在其中存储唯一的原始值,但我不能在其中存储基于其属性值的唯一对象。
下面是我的示例代码:"use strict"
var set = new Set();
var student1 = {
"name":"abc",
"id":1
}
var student2 = {
"name":"xyz",
"id":1
}
var student3 = {
"name":"def",
"id":3
}
set.add(student1);
set.add(student2);
set.add(student3);
console.log(set);
我想在集合中添加学生对象基于他们的ID值,即两个对象将是相同的,如果他们的ID的值是相同的
对于您的目的,使用Map可能更好。
const map = new Map()
const student1 = {
"name":"abc",
"id":1
}
const student2 = {
"name":"xyz",
"id":1
}
const student3 = {
"name":"def",
"id":3
}
map.set(student1.id, student1);
map.set(student2.id, student2);
map.set(student3.id, student3);
console.log(map);
ES6 Set对象使用值相等,这几乎意味着===
检查(与Javascript一样,这里有一点细微差别)。
正如其他人所建议的,也许您真正想要的是一个通过id属性的Map
相关文章:
- Firebase迁移-简单的Firebase.set没有'不再工作了——旧的还是新的
- Ember Data DS.Model's set函数不起作用
- C#asp.net mvc Set CheckBoxFor已检查的具有Model Value的属性
- 为什么JavaScript可以'找不到给定的InnerHTML并返回Cannot set property
- 无法在基于Cordova的应用程序中读取Set Cookie标头
- 在不兼容的接收器上调用的方法Set.prototype.add未定义
- 为什么可以't我用Set对象调用Array.prototype.map
- Sequelize associations:set[Models]添加新模型,而不是关联现有模型
- 如何使用选项useCSS set true为bxSlider加载onSlideAfter()事件
- Node JS,传统的数据结构?(如Set等),任何类似Java.util的node
- Bootstrap-Datepicker not selecting date when using "set
- Looking for function identical to lodash's [_.set]()
- Angular sqlLite set css url()无法设置相对路径
- Typerror:set 不是带有 angularjs 的函数
- 在使用 findAndModify 时$set运算符中将函数参数作为字段名称传递
- fabric.js:使用 Image.set() 调整图像大小是否会降低图像质量
- dataTransfer.set拖放的数据在chrome中不起作用
- 在 app.locals 上设置属性和调用 app.set() 有什么区别?
- console.log 在 CasperJS 的 set Timeout 评估中不起作用
- javascript es6 set feature