【问题标题】:How to Change "to-markdown.js" So it Will Run as Server Side JScript如何更改“to-markdown.js”使其作为服务器端 JAVAScript 运行
【发布时间】:2023-08-14 00:27:01
【问题描述】:

我试图在<script type="javascript" runat="server"> ... </script> 标签中包装一个javascript,以便我可以从vbScript/classic asp 访问它。

通常这可以正常工作,但我认为我尝试使用的脚本中有一些内容与 jScript 不兼容,但我不确定如何更改它以使其正常工作。

我尝试使用的js在这里:https://github.com/domchristie/to-markdown/blob/master/dist/to-markdown.js

我在 jScript 中看到的错误是:

Microsoft JScript runtime error '800a01b6'
Object doesn't support this property or method
/bfadmin/markdown/h2m.asp, line 583

...第 583 行是源 javascript 的这一行:

Object.keys(voidElements).forEach(function (name) {

我没有尝试使用任何扩展...因此,如果这些是导致问题的原因,则可以将其删除。我只是不确定要删除什么才能使用它。

我正在尝试做的事情是否可行,如果可以,如何将 js 更改为 jscript。

【问题讨论】:

    标签: javascript vbscript asp-classic jscript


    【解决方案1】:

    Array.forEach 是一种 ECMAScript 5 方法,而服务器端 JScript 通常是 ECMAScript 3。在不修改包含的脚本的情况下解决此问题的一种方法是使用 polyfill,例如 MDN 文档中的那个我链接到。更一般地说,有一些 polyfill 库可以将大部分兼容的 ECMAScript 5 方法添加到 ECMAScript 3 环境中。

    【讨论】:

    • 感谢您的指点。我似乎无法让那个 polyfill 工作......就像复制该代码并将其粘贴到同一脚本块中的问题脚本上方一样简单吗?
    • 应该只是复制/粘贴。自从我处理 polyfill 以来已经有一段时间了,所以我真的帮不上什么忙了。
    最近更新 更多