Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用下划线.js筛选具有条件的对象_Javascript_Underscore.js_Javascript Objects - Fatal编程技术网

Javascript 使用下划线.js筛选具有条件的对象

Javascript 使用下划线.js筛选具有条件的对象,javascript,underscore.js,javascript-objects,Javascript,Underscore.js,Javascript Objects,我正在应用程序中使用下划线.js库。我有一个目标 {a:"1", b:"2", c: "3", d:"no", e: "no"} 我想压缩这个对象,使其仅具有不具有“no”属性的属性,这将导致下面的对象 {a:"1", b:"2", c: "3"} 在Uderscore.js中,我使用了以下代码 _.omit(obj, 'attr'); 但是在上面的代码中,我需要一个函数来输出包含no值的键,而不是'attr'。有没有更好的办法。请让我知道如何获取具有“no”值的键。您可以使用。省

我正在应用程序中使用下划线.js库。我有一个目标

{a:"1", b:"2", c: "3", d:"no", e: "no"}
我想压缩这个对象,使其仅具有不具有“no”属性的属性,这将导致下面的对象

    {a:"1", b:"2", c: "3"}
在Uderscore.js中,我使用了以下代码

_.omit(obj, 'attr');

但是在上面的代码中,我需要一个函数来输出包含
no
值的键,而不是'attr'。有没有更好的办法。请让我知道如何获取具有“no”值的键。

您可以使用
省略

var obj = {a:"1", b:"2", c: "3", d:"no", e: "no"};
// _.omit returns a copy of the object
obj = _.omit(obj, function(value, key, object) {
  return (value == "no");
});
console.log(obj);

您可以使用
\省略

var obj = {a:"1", b:"2", c: "3", d:"no", e: "no"};
// _.omit returns a copy of the object
obj = _.omit(obj, function(value, key, object) {
  return (value == "no");
});
console.log(obj);
下划线的
..omit()
也接受“predicate”,这是它们对类似于
..filter()
的函数的术语:

var o={a:“1”,b:“2”,c:“3”,d:“否”,e:“否”}
console.log(u.omit(o,函数(v)){
返回v==‘否’;
}));
下划线的
.omit()
也接受“谓词”,这是它们对类似于
.filter()
的函数的术语:

var o={a:“1”,b:“2”,c:“3”,d:“否”,e:“否”}
console.log(u.omit(o,函数(v)){
返回v==‘否’;
}));

预期的输出/结果是什么?预期的输出是`{a:1',b:2',c:3'}`。没有“no”值的对象。然后将omit与谓词函数一起使用:
。.omit(obj,function(val){return val==='no'})
预期的输出/结果是什么?预期的输出是`{a:'1',b:'2',c:'3'}`。没有“no”值的对象。然后将omit与谓词函数一起使用:
。.omit(obj,function(val){return val=='no'})