如何获取包含下划线的对象?
我需要find一个包含一个对象的key
。 它不应该返回一个包含数组或string的键。 例如, a
它应该返回我但不是b
或c
a = {"b" : "hi","c":[1,2,3],"d":{"2:":3}};
这是我试过的剪断。 它返回对象的第一个实例。 但我不需要数组实例只是一个字典。
var _ = require(underscore); _.findKey(a,_.isObject);
你可以使用普通的JS来做到这一点:
var keysThatContainObjects = Object.keys(a).filter(function(k) { return typeof a[k] === "object" && !Array.isArray(a[k]); }); //["d"]
1行
var keysThatContainObjects = Object.keys(a).filter(function(k) { return typeof a[k] === "object" && !Array.isArray(a[k]); }); //["d"]
我非常干净的方式将使用下划线select
var a = {"b" : "hi","c":[1,2,3],"d":{"2:":3}}; var aFiltered = _.pick(a, function() { return _.isObject(value); });