javascript - 使用 rxjs 或 native javascript 从 json 中提取特定键

标签 javascript json angular rxjs6

假设您有一个 json 对象作为响应。例如

var items = [{
    title: 'sample 1',
    image: 'http://www.lorempixel.com/700/600/',
    description: 'lorem ipsum'
}, {
    title: 'sample 2',
    image: 'http://www.lorempixel.com/900/1200/',
    description: 'lorem ipsum'
}]

如何映射对象以便只有一个结果对象,如下所示:

[{
    image: 'http://www.lorempixel.com/700/600/',

}, {
    image: 'http://www.lorempixel.com/900/1200/',
}]

有没有一种使用 rxjs 运算符的干净方法?或者只是 js 原生?

我尝试使用:

const source = from(items);
const result = source.pipe(
                    pluck('image')
                );
result.subscribe(val => console.log('new values ', val));

但是它不起作用。有没有更干净的方法?

最佳答案

仅使用普通 JS map覆盖项目并返回仅具有该属性的对象:

var items = [{
    title: 'sample 1',
    image: 'http://www.lorempixel.com/700/600/',
    description: 'lorem ipsum'
},{
    title: 'sample 2',
    image: 'http://www.lorempixel.com/900/1200/',
    description: 'lorem ipsum'
}];

const out = items.map(({image}) => ({ image }));

console.log(out);

关于javascript - 使用 rxjs 或 native javascript 从 json 中提取特定键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53244389/

相关文章:

Angular Material 步进器 : disable header navigation

javascript - 如何让文本框排除通过 JavaScript 添加的文本(Twitch 电视聊天)

javascript - 过滤合并两个数组,匹配两个字段/列 : Javascript

java - 用JAVA解析JSON文件中包含的XML

angular - 我可以使用 @ngtools/webpack 发出类型/声明 (.d.ts) 和装饰器元数据 (.metadata.json) 文件吗?

Angular2,如何导入visjs

javascript - 使用 vm 在 angularjs 中重定向

java - d3js 动态 csv 从下拉列表切换

javascript - Vee Validate 3.x,定义ValidationFlags 类型

java - JSON字段不能是字符串吗?