Rhino 中没有 Array.filter() 吗?

2023-12-26

为什么我不能使用Array.filter()在犀牛?

代码是这样的:

var simple_reason = ["a", "b", "c"];
print(typeof simple_reason.filter);

var not_so_simple_reason = new Array("a", "b", "c");
print(typeof not_so_simple_reason.filter);

两种情况都会输出“未定义”。


There is no standardized filter function for Javascript Arrays, it is only an extension to the standard. (There is as of the ES5 spec published just a month after this answer was posted.) The MDC reference page https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/filter gives you an compatibility sample to use for those implementations that do not support it...

if (!Array.prototype.filter)
{
  Array.prototype.filter = function(fun /*, thisp*/)
  {
    var len = this.length >>> 0;
    if (typeof fun != "function")
      throw new TypeError();

    var res = new Array();
    var thisp = arguments[1];
    for (var i = 0; i < len; i++)
    {
      if (i in this)
      {
        var val = this[i]; // in case fun mutates this
        if (fun.call(thisp, val, i, this))
          res.push(val);
      }
    }

    return res;
  };
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Rhino 中没有 Array.filter() 吗? 的相关文章

随机推荐

  • 如何在 UNIX 中创建新的环境变量......?

    如何在unix中创建新的环境变量并在程序中使用它 你可以知道你正在运行什么 shellps o comm p 我认为这或多或少是普遍的 所以 在 bash 和某些类似的 shell 中 如果您想为一次特定运行创建变量 您可以这样做 MYVA
  • 如何构建我的 Express 应用程序,只需要打开 mongodb 连接一次?

    注意 请在回答之前阅读这篇文章的编辑部分 它可能会节省您的时间并回答我的问题之一 我遇到的问题非常简单 但我对整体来说还很陌生 并且在弄清楚如何在节点 express 应用程序中正确实现 mongodb 数据库连接时遇到问题 我正在使用 E
  • 管道缓冲区保留直到处理完成

    我正在研究使用管道处理来自网络的二进制消息的可能性 我将处理的二进制消息带有有效负载 并且希望将有效负载保持为二进制形式 这个想法是读出整个消息并创建一个消息片及其有效负载 一旦消息被完全读取 它将被传递到通道链进行处理 处理不会是即时的
  • 在 rgdal R 中使用 spTransform 重新投影空间点时出错

    G day 我在 CRS 澳大利亚大地基准 66 84 为了简洁起见 AGD66 中有大量经 纬度坐标 我想将这些坐标从 AGD66 更改为 WGS84 因为它们之间大约有 200m 的差异 而且我在 WGS84 中有其他坐标和图层 我尝试
  • PHP 计算对象属性出现次数

    我有一个如下所示的 PHP 对象 我想知道获取属性 typeId 3 的对象计数的最简单方法是什么 Array 0 gt ABC Object id gt 13 typeId gt 3 sortOrder gt 0 1 gt ABC Obj
  • 在python中添加atom中的模块

    我的计算机上安装了 pygame 和 tkinter 模块 但我无法找到如何在文本编辑器 Atom 中访问它们 我可以在 IDLE 中使用它们 import pygame 但是当我尝试将其导入atom 时 它无法识别该模块 有人知道为什么吗
  • Firefox 是否支持表格元素上的position:relative?

    当我尝试使用时position relative position absolute on a th or td 在 Firefox 中它似乎不起作用 简单且最正确的方法是将单元格的内容包装在 div 中并添加相对于该 div 的位置 ex
  • .net core razor 页面中的多个视图组件未正确绑定

    我正在使用 razor 页面创建一个 net core 5 Web 应用程序 并且正在努力将我创建的视图组件绑定到我的页面 如果我在页面上有多个相同的视图组件 以下完美运行 我的页面 cshtml page model MyPageMode
  • 多个邮件附件 - PhoneGap

    您好 我正在phonegap中做一个应用程序 它需要有多个附件 但我无法有多个附件 任何解决方案 我的代码如下
  • 使用单个函数调用写入多个文件描述符

    我有一个群聊服务器的用例 其中服务器必须向所有客户端的套接字写入一个公共字符串 然后 我通过循环遍历文件描述符列表并将字符串写入每个文件描述符来解决这个问题 现在我正在考虑寻找更好的解决方案 是否可以通过使用 Linux 中的 tee 系统
  • 在 Swift 3.0 中转换 base64String 中的音频文件

    我正在使用以下代码录制音频文件 let audioFilename getDocumentsDirectory appendingPathComponent tt mp4 let settings AVFormatIDKey Int kAu
  • 修改多维 numpy 数组中的对角线

    我有一个形状为 7 3 7 3 的多维 numpy 数组 我想修改轴 0 和轴 2 重合的广义对角线 这个广义对角线将被定义为数组中第 0 个和第 2 个索引重合的元素 并且形状为 3 3 7 Doing arr diagonal axis
  • 在 Vbscript 中终止进程

    我试图终止名为 AetherBS exe 的进程的所有实例 但以下 VBscript 不起作用 我不太确定在哪里 为什么会失败 那么我怎样才能杀死 AetherBS exe 的所有进程呢 CloseAPP AetherBS exe Func
  • Boost.Spirit 将表达式转换为 AST

    使用 Boost Spirit 将某些表达式转换为 AST 的正确方法是什么 我尝试构建它 但我认为它很混乱 可以简化很多 https godbolt org z VXHXLY https godbolt org z VXHXLY incl
  • 调试非托管 Neo4j 扩展

    我刚刚开始使用 Graphaware 框架为 Neo4j 服务器开发一个非托管扩展 到目前为止一切都很好 甚至单元测试也有效 但我想实际调试从 Intellij 内部运行 Neo4j 服务器的扩展 有人能给我一个关于如何做到这一点的提示吗
  • Spring Batch 多数据源和 ChainedTransactionManager 风险

    我正在研究由两个数据源组成的 Spring Batch 的可行性 用于 Spring Batch 元数据的 SQL 数据源和用于业务数据的 MongoDB 数据源 具有事务性用途 交易方面在这里提出了几个问题 以下主题 使用 MongoDB
  • 让 Django 走向绿色

    我有一个 Django 管理命令 可以发出数千个 TCP UDP 请求 我使用 Gevent 来加快速度 因为我重组了代码以作为协程工作 套接字连接不再阻塞 但从我读到的内容来看 Django 的某些部分仍然不是绿色的 我所说的绿色 是指使
  • 如何使用 JSTL 在 JSF 1.2 页面中强制构建阶段?

    我在 JSF 应用程序中使用 JSTL 标签 通过某些操作 我需要重建组件树 就像它是初始构建一样 我当前的症状是对象与组件关联不正确 重复的 ID 以及陈旧组件的其他问题 这是使用在构建阶段使用的 c foreach 不能使用重复标记 请
  • 我们如何确定我们使用的是 Web API 1 还是 Web API 2?

    介绍一下问题 我想知道我们使用的是Web API 1还是2 我自己的packages config指示版本5 0 0 这是 Web API 1 还是 2 搜索和研究 我尝试过谷歌搜索以下内容 网络 API 1 网络 API 2 and AS
  • Rhino 中没有 Array.filter() 吗?

    为什么我不能使用Array filter 在犀牛 代码是这样的 var simple reason a b c print typeof simple reason filter var not so simple reason new A