Javascript 我可以使用LoDash将一个大型json对象(从REST服务)映射到一个较小的对象吗?
我收到一个tweet列表(来自REST服务),这是一个包含很多属性的大列表,但我只对返回的集合中每个项目中的几个属性感兴趣 将其映射到较小对象的最佳方式是什么?洛达斯会帮忙吗Javascript 我可以使用LoDash将一个大型json对象(从REST服务)映射到一个较小的对象吗?,javascript,json,underscore.js,lodash,Javascript,Json,Underscore.js,Lodash,我收到一个tweet列表(来自REST服务),这是一个包含很多属性的大列表,但我只对返回的集合中每个项目中的几个属性感兴趣 将其映射到较小对象的最佳方式是什么?洛达斯会帮忙吗 我会迭代它并创建许多新对象吗?毫无疑问,在大型json中查找属性时,lodash确实很有用。它有许多有用的方法来管理集合。拔毛是我的最爱 迭代那个大对象是一项乏味的工作。这是可以做到的,但lodash是一种简单而智能的方法:)假设您已经从JSON(字符串)创建了一个大型tweet对象数组,实际上有一个下划线/lodash函
我会迭代它并创建许多新对象吗?毫无疑问,在大型json中查找属性时,lodash确实很有用。它有许多有用的方法来管理集合。拔毛是我的最爱
迭代那个大对象是一项乏味的工作。这是可以做到的,但lodash是一种简单而智能的方法:)假设您已经从JSON(字符串)创建了一个大型tweet对象数组,实际上有一个下划线/lodash函数用于创建具有属性子集的对象。你在找我 基本上,你会按照以下思路做一些事情:
var importantParams = ["id", "user", "text", "created_at"];
var smallerObjArray = _.map(largerObjArray, function(largeObj){
return _.pick(largeObj, importantParams);
});
它是什么类型的物体?如果它是一个列表,听起来像是一个数组。如果是这样,为什么不使用本机方法呢?另外,请注意JSON与对象的关系:JSON是字符串而不是对象,因此它是JavaScript对象表示法的缩写。如果已经可以作为对象访问您所拥有的内容,那么通俗地说,它被称为POJO或普通的旧JavaScript对象。他们是不同的。前者是一种类似于YAML或XML的数据交换格式,而后者是一个具有属性和值的实际对象。如果您已经在内存中加载了该对象,为什么要费劲地减少它?是为了节省内存吗?此对象在使用后将保留还是丢弃?如果不保留,可能就不值得麻烦了。基础物体和剥离物体之间的大小差异是否如此显著,以至于即使保留下来,也能保证它的存在?