javascript - ExtJS 5 - 如何将对象转换为 Collection/MixedCollection/HashMap?

标签 javascript extjs extjs5

我有一个对象,我想对其执行添加/删除/查找操作。所以我只是尝试使用 Ext.util.Collection/Ext.util.MixedCollection/Ext.util.HashMap 类将该对象转换为 HashMap/Collection 对象。因为它已经是一个对象我只想执行类型转换?在 ExtJS 中是否有直接的选项来实现这一点?

我目前正在使用以下实用方法来实现这一目标。除了这个还有其他更好的选择吗?

原始对象:-

  Object {abbreviateValues: true, category: "P", charCode: 13092,charDescription: Array[5], charId: 13092…}

实用方法:-

convertObjectToCollection: function(rawObject){
  var hashMapObject = Ext.create('Ext.util.HashMap'); 
    for(var key in rawObject) {
      hashMapObject.add(key,rawObject[key]);
    } 
  return hashMapObject;
}

谢谢!

最佳答案

如果您真的不需要单独的实用程序 - 至少在小范围内,那么简洁就是全部:

var obj = { foo: 1, bar: 2, baz: 3 },
    map = Ext.create('Ext.util.HashMap');
Ext.iterate(obj, map.add, map);

关于javascript - ExtJS 5 - 如何将对象转换为 Collection/MixedCollection/HashMap?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29058716/

相关文章:

javascript - 如何在 ExtJS 中添加图像按钮网格

javascript - 自动滚动不适用于树面板

javascript - JS 弹出窗口

javascript - 转换 HH :mm to Date object in js

javascript - ColdFusion:修改 cfgrid 中的组合框选项

javascript - 如何在日期字段中将日期的默认值设置为下周六?

javascript - 使用 Ext.form.field.HtmlEditor 右键单击​​上下文菜单

javascript - 在事件循环中为 nodejs 任务分配优先级

javascript - 使用 Promise 时 OAuth 流程不工作

javascript - 如何使用 Direct store 在 Ext JS 中设置远程自动完成?