【问题标题】:Implement Ruby's method_missing inside a JS Class? [duplicate]在 JS 类中实现 Ruby 的 method_missing? [复制]
【发布时间】:2016-03-11 08:45:50
【问题描述】:

我需要一些类似于 Ruby 的method missing 的功能。我搜索了,只找到了两种方法:

  1. noSuchMethod:仅适用于 Mozilla Firefox,我认为是 已弃用之类的。
  2. ES6 代理:尚未在主流浏览器 Chrome 中实现, 并按照以下标准在其他主要项目中部分实施:https://kangax.github.io/compat-table/es6/

我在考虑代理,但如果 Chrome 不支持它是一个主要缺点,如果它不被 chrome 支持,可能也不适用于 NodeJS。

知道如何实现此功能吗?也许是一个库或普通的 JS 原型?

【问题讨论】:

    标签: node.js


    【解决方案1】:

    如果没有像代理或noSuchMethod 这样的语言级功能,这是不可能的。原型链与任何其他解决方案存在相同的问题,即没有通用的方法来处理对对象上缺少的方法/属性的调用。

    【讨论】:

    • 那么只要chrome中没有实现代理就没有希望在JS中使用这种功能吗?
    猜你喜欢
    • 2011-10-20
    • 2013-11-15
    • 1970-01-01
    • 2012-03-27
    • 1970-01-01
    • 1970-01-01
    • 2010-09-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多