Code前端首页关于Code前端联系我们

js解决错误不是函数错误

terry 2年前 (2023-09-09) 阅读数 291 #Javascript
文章标签 functionjs

不要经常写分号,这样会导致意想不到的错误。

今天给大家介绍一下如何解决js中函数不是分号错误的问题。

我习惯编写没有分号的 JavaScript。

我真的很喜欢。我认为语言更干净。

您可能不喜欢它,这是可以理解的。但是它就是这样啊。

分号是可选的。我们不需要添加它们。

不过,有时候我们还是要注意。特别是在 Node.js 中,我们使用 require() 来加载外部模块和文件。

在某些情况下,这可能会导致以下错误:

TypeError: require(...) is not a function

这是一个奇怪的错误,不是吗?

让我们看看如何重现此错误。

我需要一个库,然后必须在根级别运行一些代码,我创建了一个立即调用的异步函数:

const fs = require('fs')

(async () => {
  //...
})()

在 request() 之后,JS 没有看到分号,我们用 ( 换了一行,JS 认为我们正在尝试执行一个函数。

需要 ('fs') 作为函数名称,如果模块导出返回一个函数,则该函数实际上有效。

但事实并非如此,所以它报告...这不是函数错误。

如何解决这个问题?

我们需要添加一个分号。

以下两种方法可以解决这个问题。

方法1

/**
* 前端教程网
* https://codeqd.com/wp-content/uploads/2023/09/
*/

const fs = require('fs')

;(async () => {
  //...
})()

方法2

/**
* 前端教程网
* https://codeqd.com/wp-content/uploads/2023/09/
*/

const fs = require('fs');

(async () => {
  //...
})()

为了避免到处使用分号,我们必须多写一些代码:)

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门