【发布时间】:2019-02-05 04:40:56
【问题描述】:
试图找出编写函数keyExisits 的最简单方法,该函数检查并任意嵌套键以查看它是否存在于对象中并且未定义,vs 不存在。
假设这个对象
var obj = {
a: {
b: 1,
c: {
d: 2,
e: undefined
}
}
}
在这个对象中,键a.c.e存在并且是undefined,键a.c.f不存在
所以
keyExists(obj, 'a.c.e') === true
keyExists(obj, 'a.c.f') === false
使用 lodash/下划线是可以的
** 更新 **
Lodash has 的工作原理就是这样
【问题讨论】:
-
不同意,因为这个问题是针对嵌套键的。链接问题的答案不提供解决方案。
-
这是一个不同的问题。
-
无论如何,检查这个问题stackoverflow.com/questions/2631001/…
-
@Andrey 它仍然是如何检查密钥是否存在的副本,即使需要实现递归,基本问题是相同的
-
而lodash有
_.has方法lodash.com/docs/4.17.10#has
标签: javascript lodash