- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
嗨,我有一个这样的对象,如果对象中不存在,我想将属性值返回为 undefined
或 null
。这是我的对象。
var build= { 'ts1': 1, 'ts2': '2', 'ts3': 3 };
我正在使用_.pick
函数来选择值,它只选择对象中存在的值。 这是我的代码:
_.pick(build, [ 'ts0' 'ts1', 'ts2','ts5','ts6','ts7']);
我得到的结果是这样的:
{ 'ts1': 1, 'ts2': '2'}
预期输出是:
{ 'ts0':null, 'ts1': 1, 'ts2': '2','ts5':null,'ts6':null,'ts7':null}
请有人能帮我解决这个问题。
最佳答案
_.pick
旨在为您提供对象属性的子集。它不会将原始对象中从未存在过的属性分配给 null
。
但是,您提到:
I want to return the property values as
undefined
ornull
if not present in the object
幸运的是,对于目标对象上不存在该属性的所有属性访问,JavaScript 已经默认执行此操作(返回 undefined
)。因此,您可以简单地使用已有的代码并使用常规括号属性访问表示法将属性值默认为 undefined
:
var build = {
'ts1': 1,
'ts2': '2',
'ts3': 3
}
var result = _.pick(build, [
'ts0', 'ts1', 'ts2', 'ts5', 'ts6', 'ts7'
])
console.log(result['ts0']) //=> undefined
console.log(result['ts1']) //=> 1
<script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.4/lodash.min.js"></script>
编辑:如果您确实需要对象上存在这些属性并且默认为null
,则可以使用以下方法:
var build = {
'ts1': 1,
'ts2': '2',
'ts3': 3
}
var result = _.reduce([
'ts0', 'ts1', 'ts2', 'ts5', 'ts6', 'ts7'
], function (o, e) {
o[e] = e in build ? build[e] : null
return o
}, {})
console.log(result['ts0']) //=> undefined
console.log(result['ts1']) //=> 1
<script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.4/lodash.min.js"></script>
关于javascript - 如果使用 Lodash 在对象中找不到属性,如何将对象值设置为 `null` 或 `undefined`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42638852/
例如,我有一个父类Author: class Author { String name static hasMany = [ fiction: Book,
代码如下: dojo.query(subNav.navClass).forEach(function(node, index, arr){ if(dojo.style(node, 'd
我有一个带有 Id 和姓名的学生表和一个带有 Id 和 friend Id 的 Friends 表。我想加入这两个表并找到学生的 friend 。 例如,Ashley 的 friend 是 Saman
我通过互联网浏览,但仍未找到问题的答案。应该很容易: class Parent { String name Child child } 当我有一个 child 对象时,如何获得它的 paren
我正在尝试创建一个以 Firebase 作为我的后端的社交应用。现在我正面临如何(在哪里?)找到 friend 功能的问题。 我有每个用户的邮件地址。 我可以访问用户的电话也预订。 在传统的后端中,我
我主要想澄清以下几点: 1。有人告诉我,在 iOS 5 及以下版本中,如果您使用 Game Center 设置多人游戏,则“查找 Facebook 好友”(如与好友争夺战)的功能不是内置的,因此您需要
关于redis docker镜像ENTRYPOINT脚本 docker-entrypoint.sh : #!/bin/sh set -e # first arg is `-f` or `--some-
我是一名优秀的程序员,十分优秀!