Javascript:函数.原型.方法

2023-11-23

我想大多数人都看过下面的代码片段:

Function.prototype.method = function (name, func) {
  this.prototype[name] = func;
  return this;
};

我也知道它会影响所有函数,因为它们都是由 Function 创建的对象,以便它们可以访问名为“method”的方法,但是我很困惑为什么 Function 本身也可以访问“method”,如下所示:

Function.method('test', function () {return 1;});

Edorka 的答案是正确的:函数是它自己的构造函数(即“父函数”)。

Function.constructor;  // function Function() { [native code] }

通常你can't做你正在做的事。例如,这是行不通的:

f = function () {};
f.prototype.a = 5;
f.a;  // undefined

这种事情只有在使用函数作为构造函数时才有效,如下所示:

f = function () {};
f.prototype.a = 5;
g = new f();
g.a;  // 5

但 Function 很奇怪,它是所有函数的构造函数,而且本身也是一个函数,所以它模板化了它的属性its own原型。因此你可以打电话Function.method()在你的代码中。

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

Javascript:函数.原型.方法 的相关文章

随机推荐

  • 我可以将已保存的 R 对象加载到新的对象名称中吗?

    当您使用 R 数据文件保存变量时save 它以保存它的会话中的任何名称保存 当我稍后从另一个会话加载它时 它会以相同的名称加载 加载脚本不可能知道该名称 该名称可能会覆盖加载会话中同名的现有变量 有没有一种方法可以安全地将对象从数据文件加载
  • 从 web.config 读取会员资格部分

    我已经创建了一个自定义成员资格提供程序类 到目前为止一切顺利 但是 我不确定如何从 web config 文件中读取配置设置 我尝试从 Google 和 Stackoverflow 进行搜索 似乎有人也遇到了我的问题 问题并询问 但没有给出
  • Jackson 循环依赖项

    我有一个循环依赖 我现在正在努力解决它 学习这两个课程 出于演示目的删除了样板代码 Class 1 Entity Table name T CREDENTIAL Cache usage CacheConcurrencyStrategy RE
  • strtok 不丢弃换行符

    所以我有一个包含一堆名称和数字的输入文件 我开始使用 strtok 来分解字符串 以便我可以从每个字符串中提取所有数据 一切似乎都工作正常 但由于某种原因 它没有丢弃换行符 int procFile PERSON data FILE fpF
  • onUserInteraction() 到底什么时候被调用?

    在我的应用程序中 我有一个线程每隔 60 秒检查一次来自 Web 服务的数据 在 onCreate 中定义 new Thread new Runnable Override public void run while true try Th
  • TextureView 中的抗锯齿

    我尝试用SurfaceView and a TextureView并注意到用TextureView比使用更多别名 更少 平滑 SurfaceView 这是什么原因呢 有什么办法可以配置渲染TextureView为了看起来更好 The Tex
  • 用于调用 printf 的 C++11 编译时格式字符串文字构造

    我想做的是创建 template
  • javax.mail.AuthenticationFailedException:535 5.0.0 身份验证失败

    我不明白为什么我会得到这个例外 这是尝试发送电子邮件的代码 public void sendAsHotmail final String username jTextField14 getText final String password
  • Kafka Consumer 挂在 java 中的 .hasNext 处

    我有一个简单的 Java Kafka Consumer 代码如下 public void run ConsumerIterator
  • 在 ajax 加载的内容上重新运行应用程序 Javascript

    我希望我的应用程序中的所有 AJAX 加载内容都由我的应用程序 JQuery 脚本进行评估 与正常加载的内容相同 例如JQuery 扫描 AJAX 加载的内容以查找选择器 例如 模式框链接 等 我所有的 JavaScript 都在普通的 d
  • HTML5 / JS 存储事件处理程序

    我正在使用 Safari webkit 的引擎以及 HTML5 和 JS 来创建一个离线应用程序 现在我正在使用sessionStorage数组来存储我的应用程序的状态 模拟 存储数据与检查器一起工作正常 功能工作正常 只是事件处理程序没有
  • 调用 WebMethod,传递 Dictionary 作为参数

    我正在尝试简化将数据从 WebMethod 层返回到客户端的过程 并将来自客户端的参数集表示为Dictionary
  • 从 python 的单词列表中返回一个随机单词

    我想使用 python 从文件中检索随机单词 但我不相信我的以下方法是最好或有效的 请协助 import fileinput import random file line for line in fileinput input etc d
  • PHP 通过 VPN 发布数据

    我需要连接到一个网络服务behind of a VPN通过 PHP 我的服务器是 Debian Linux Squeeze 是否可以在 Linux 上通过 PHP 来完成此任务 如果可以的话这样做会有风险吗 当VPN连接挂起等时 操作系统或
  • C# 中 JSON 字符串到 CSV 以及 CSV 到 JSON 的转换

    我正在我的 asp net Web API 项目中使用 JSON CSV 文件并尝试使用CSV助手 and ServiceStack Text库但无法使其工作 包含数组的 JSON 文件是动态的 并且可以具有任意数量的字段 我使用 Stre
  • C++ 从数组定义行为中间的指针进行负索引?

    include
  • Spark-NLP 预训练管道只能在 Linux 系统上运行吗?

    我正在尝试设置一个简单的代码 在其中传递数据帧并使用 johnSnowLabs Spark NLP 库提供的预训练解释管道对其进行测试 我正在使用 anaconda 的 jupyter 笔记本 并使用 apache toree 设置 Spa
  • 在linux中定期读取性能计数器

    有没有办法在Linux中定期读取性能计数器 就像是perf stat我正在寻找能够对每个 X 周期进行采样的能力 基本上我希望能够读取某些程序的每 X 个 CPU 周期的指令计数器 执行的指令数 好消息 在下一个内核 Linux 3 9 中
  • 无法在管道中构建 .Net 5

    两周前我使用 Net 5 RC2 创建了一个新的解决方案 我已将其升级到新版本 5 0 0 我正在尝试创建一个标准的 ASP Net 管道来构建它 代理池是 Azure Pipelines 代理规范我已经尝试过 windows 2019 和
  • Javascript:函数.原型.方法

    我想大多数人都看过下面的代码片段 Function prototype method function name func this prototype name func return this 我也知道它会影响所有函数 因为它们都是由