对象:深度省略

时间:2015-05-12 10:15:27

标签: javascript underscore.js

有没有办法在嵌套对象属性上使用_.omit

我希望这种情况发生:

schema = {
  firstName: {
    type: String
  },
  secret: {
    type: String,
    optional: true,
    private: true
  }
};

schema = _.nestedOmit(schema, 'private');

console.log(schema);
// Should Log
// {
//   firstName: {
//     type: String
//   },
//   secret: {
//     type: String,
//     optional: true
//   }
// }

_.nestedOmit显然不存在且仅_.omit不会影响嵌套属性,但应该清楚我要查找的内容。

它也不一定要强调,但根据我的经验,它往往只会使事情更短更清晰。

2 个答案:

答案 0 :(得分:8)

您可以创建一个private void sendSMS(String phoneNumber, String message) { Log.d("phoneNumber", phoneNumber); Log.d("Message", message); PendingIntent pi = PendingIntent.getActivity(mContext, 0, new Intent( mContext, Object.class), 0); smsManager.sendTextMessage(phoneNumber, null, message, pi, null); } mixin,它将遍历该对象以删除不需要的密钥。像

这样的东西
nestedOmit

和演示http://jsfiddle.net/nikoshr/fez3eyw8/1/

答案 1 :(得分:0)

此问题的详细解决方案发布在另一个线程中。请看看下面的线程

链接-Cleaning Unwanted Fields From GraphQL Responses