【发布时间】:2020-09-01 11:52:21
【问题描述】:
<a href='#' onclick='returnUrl = /url=(https?:\/\/.+)/.exec(location); if(returnUrl)location.href = returnUrl[1];else location.href = "/"'>Back to Blog</a>
谁能详细解释一下上面的代码?
【问题讨论】:
-
这是一个很好的机会,可以将您的代码移动到一个函数中,并将每个操作拆分到自己的行中。然后使用浏览器的调试工具在代码执行时单步执行代码并检查每个操作的结果。当你这样做时,哪个操作不清楚?哪个操作产生了您意想不到的结果?
-
我不懂html..你能解释一下onclick里面写的代码的工作原理吗?
-
(1) 您询问的具体代码是 JavaScript,而不是 HTML。 (2) 如果您不了解 HTML 或 JavaScript,那么您的第一步就是寻找一些关于这些技术的介绍性教程并开始学习。 Stack Overflow 可以帮助您解决代码中的特定问题,但我们不提供自定义辅导服务来教您这些技术。要了解有关此社区的更多信息以及我们如何为您提供帮助,请从 tour 开始并阅读 How to Ask 及其链接资源。
-
我在过去的 4 个小时里一直在试图分解这段代码的工作。我知道点击它重定向到主页的链接和 exec 函数用于识别位置参数内的模式.但是我在我正在查看的网站的任何地方都找不到 returnUrl 参数。我也没有找到为什么 url http 的东西放在“/ /”之间。
-
在您显示的代码中
returnUrl被称为“变量”。变量用于在代码中存储值。由于它有一个隐式声明,默认情况下它是window对象的一个属性。正斜杠之间的语法称为“正则表达式”。