reactjs - ES6 - 根据真值过滤对象

标签 reactjs react-native ecmascript-6

我有一个对象,它包含一些像这样的 bool 值:

{ date: "2017-10-05", name_change: false, age_change: true, ... }

我想filter() 为真的键。 我还需要日期值。我怎样才能制作这个过滤器

问候。

最佳答案

使用 Object#keys 获取 key , 然后用 Array#reduce 迭代键数组,并构建一个不包含值等于 true 的键的新对象:

const obj = { 
  date: "2017-10-05", 
  name_change: false, 
  age_change: true 
};

const result = Object.keys(obj)
  .reduce((o, key) => {
    obj[key] !== true && (o[key] = obj[key]);

    return o;
  }, {});

console.log(result);

关于reactjs - ES6 - 根据真值过滤对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46585258/

相关文章:

javascript - React setState() 不会在回调中返回更新的状态

android - 无法解析 ':react-native-twilio-video-webrtc:_debugPublishCopy' 的所有依赖项。 > com.android.support :support-annotations

reactjs - Jest : TypeError: Cannot read property of undefined

javascript - es6过滤并找到相同的对象项

javascript - 在 React 组件中进行重定向的适当生命周期阶段是什么?

javascript - 如何使用 img.src 构建渲染函数

javascript - 使用 react redux 登录后重定向用户?

ios - 在 iOS 中设置状态时 React Native TextInput 不更新

javascript - 无法使抽屉导航主页按钮正常工作

javascript - 在 ES6 中获取父类(super class)名称