【发布时间】:2021-11-12 17:38:01
【问题描述】:
我最近在与一些人谈论我正在编写的程序时听到了“hook”这个词。我不确定这个术语到底意味着什么,尽管我从对话中推断出钩子是一种函数。我搜索了一个定义,但找不到一个好的答案。有人能告诉我这个术语的一般含义吗?也许可以举个小例子来说明这个定义?
【问题讨论】:
-
见Hooking @ Wikipedia。该链接隐藏在投票率较低的答案之一中。
-
事件和钩子看起来很相似。那么有什么区别吗?如果仅在事件发生后调用事件回调(例如
click),则有onbeforeunload事件。这似乎是在实际事件之前调用回调。那么从技术上讲,它是伪装事件的钩子吗?钩子处理程序是在主要操作之前、替代还是之后调用? ...我相信钩子和事件之间有几个区别。钩子看起来像一个低级的干预,一个事件就像一个受限版本的钩子。为什么没有人谈论这个?有人启发我们。 -
@akinuri 你的想法很好,但问题是“钩子”是编程中的“东西”,所以一般来说是一个函数,在某个“事件”发生后调用。事情是一个“事件”可以是另一个函数或另一个回调,由另一个钩子调用,或者是一个浏览器事件,如点击或按键等。所以钩子描述了这个“过程”
标签: hook