相关疑难解决方法(0)

JavaScript:对象的filter()

如果我理解正确,ECMAScript 5有类型的filter()原型Array,但不是Object类型.

我如何在JavaScript中实现filter()for Object

假设我有这个对象:

var foo = {
    bar: "Yes"
};
Run Code Online (Sandbox Code Playgroud)

我想写一个filter()适用于Objects的:

Object.prototype.filter = function(predicate) {
    var result = {};

    for (key in this) {
        if (this.hasOwnProperty(key) && !predicate(this[key])) {
            result[key] = this[key];
        }
    }

    return result;
};
Run Code Online (Sandbox Code Playgroud)

这在我在下面的演示中使用时有效,但是当我将它添加到使用jQuery 1.5和jQuery UI 1.8.9的网站时,我在FireBug中遇到了JavaScript错误.

Object.prototype.filter = function(predicate) {
  var result = {};
  for (key in this) {
    if (this.hasOwnProperty(key) && !predicate(this[key])) {
      console.log("copying");
      result[key] = this[key];
    }
  } …
Run Code Online (Sandbox Code Playgroud)

javascript jquery filtering object

136
推荐指数
11
解决办法
27万
查看次数

标签 统计

filtering ×1

javascript ×1

jquery ×1

object ×1