Uncaught TypeError: XXX is not a function的解决方法

这篇具有很好参考价值的文章主要介绍了Uncaught TypeError: XXX is not a function的解决方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

今天在学习JS的时候,在学函数时,发现了一个有点意思的问题:

Uncaught TypeError: XXX is not a function的解决方法

在网上找了很多方法,无果,毕竟不是每个人的原因都相同。

再回看了一下笔记,对比了一下代码,找到了可疑之处:

Uncaught TypeError: XXX is not a function的解决方法

上面就是我当时看视频拍下的照片,但是笔记内容没有很完善,当时听课的时候,还是抱着这个之前学过的心态去听的,没想到晚上自己实践之后,就给我当头一棒了。说明,学习心态还是非常重要的,好在才学到60集而已。

下面是我的代码:

let a = +prompt(`请输入第一个数:`)
        let b = +prompt(`请输入第二个数:`)
            // let sum = 0
            // console.log(a, b)

            // 新方法,匿名函数
            (function (a, b) {
                console.log(a + b)
            })(a, b)

突然发现,我的function少了分号,而我上课的时候,发现老师有重点说这个问题,这个分号是必须写的,不然就会报错。于是我在后面加上了分号:

Uncaught TypeError: XXX is not a function的解决方法

去浏览器运行,发现仍旧是报错的:

Uncaught TypeError: XXX is not a function的解决方法

然后我就想着会不会是加错地方了,因为错误提示说promp有问题,所以我决定把分号加到function加到前面,如下图:

Uncaught TypeError: XXX is not a function的解决方法

在浏览器刷新,发现成了:

Uncaught TypeError: XXX is not a function的解决方法

所以总得来说,是因为我使用了匿名函数中的立即执行方法,本身就是为了验证和加强我的学习理解的,没想到让我写了这么久。

最后,附上我的四种方法:

let a = +prompt(`请输入第一个数:`)
        let b = +prompt(`请输入第二个数:`)
            // let sum = 0
            // console.log(a, b)

            // // 新方法,匿名函数
            // ; (function (a, b) {
            //     console.log(a + b)
            // })(a, b)

            // 第二种方法
            ; (function (a, b) {
                console.log(a + b)
            }(a, b))

            // //传统方法,没有sum
            // function plus(x, y) {
            //     x = x || 0
            //     y = y || 0
            //     console.log(x + y)
            // }
            // plus(a, b)

            // // 传统方法,有sum:
            // function plus(a, b) {
            //     a = a || 0
            //     b = b || 0
            //     sum = a + b
            // }
            // // 先执行这个函数,然后再打印
            // plus(a, b)
            // console.log(sum)
            
            // //注意:    得有返回值,才能将运行结果赋给一个值
            function plus(a,b){
                return a+b
            }
            sum = plus(a,b)
            console.log(sum)

欢迎大家找不同。文章来源地址https://www.toymoban.com/news/detail-506413.html

到了这里,关于Uncaught TypeError: XXX is not a function的解决方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • JS报错Uncaught (in promise) TypeError: (intermediate value).format is not a function

    出现“date.format is not a function”错误是因为格式方法未在 JavaScript 中实现。 意思是说Format不是一个方法。去查了一下,发现是javascript已经去掉此方法了,要使用的话,需要添加第三方库。 要解决该错误,需要使用第三方包来格式化我们的日期,例如 moment 或 date-fns。 再或者

    2024年02月17日
    浏览(54)
  • 解决 Uncaught (in promise) TypeError: list is not iterable 报错

    最近在项目中遇到 Uncaught (in promise) TypeError: list is not iterable 报错,虽然不影响代码运行,但是看着报错感觉有点难受,试试能不能解决它 看了很多篇文章,都是说使用 Object.keys() 可以解决问题 就先使用 Object.keys() 看看,代码运行之后 因为 Object.keys() 传入的是 null 和 undefin

    2024年02月11日
    浏览(52)
  • TypeError: this.getOptions is not a function 的解决

     一、问题的出现: 在进行  React  / vue项目开发的时候,出现了这个错误: TypeError: this.getOptions is not a function ,如下所示:  二、问题的分析:         这个实际上就是 sass-loader 的版本过高或过低,与当前node版本不对应,不兼容 getOptions 函数方法,所以需要对 sass-loa

    2024年02月12日
    浏览(55)
  • webpack 解决:TypeError: merge is not a function 的问题

    其一、存在的问题为: TypeError: merge is not a function 中文为: 类型错误:merge 不是函数 其二、问题描述为: 想执行 npm run dev 命令,运行起项目时,控制台报错 TypeError: merge is not a function; 其三、报错的信息为: A、报错的图片: B、报错的代码: 根据报错提示的信息: merge 不

    2024年02月08日
    浏览(51)
  • js出现Uncaught ReferenceError: XXX is not defined错误的解决办法

    javascript提示:Uncaught ReferenceError: XXX is not defined的意思是函数XXX()没有被定义。js一般出现Uncaught ReferenceError: XXX is not defined这样的错误,大概率是你把函数放在了 window.onload 里面。 出现这个问题的原因是: 1.window.onload事件是在整个页面包括dom结构、图片等等全部加载完成之后

    2024年02月09日
    浏览(49)
  • vue3+vite项目,安装依赖运行报错“failed to load config from xxx,TypeError: vite.createFilter is not a function”

        今天从GitHub上拉下来了一个 vue3+vite 项目,之前就是安装依赖就可以运行了,但是今天一直报错,显示 TypeError: vite.createFilter is not a function     vite版本与安装的依赖版本不匹配     近期vite3发布,但我们使用的还是v2,所以安装依赖的时候默认安装的是最新版本,这

    2024年02月21日
    浏览(58)
  • Syntax Error: TypeError: this.getOptions is not a function的解决(Vue)

    报错信息: TypeError: this.getOptions is not a function 这个是在运行项目是遇到的问题 这个报错是类型错误,this.getOptions 不是一个函数 。这个错误一般就是less-loader库里的错误。 主要是less-loader版本太高,不兼容this.getOptions方法。 解决方案: 找到package.json文件中的“less”和“les

    2024年02月12日
    浏览(53)
  • 【已解决】TypeError: _ctx.$t is not a function when using $t in child component

    项目使用的工具及版本     \\\"vue\\\": \\\"^3.2.13\\\",     \\\"vue-i18n\\\": \\\"^9.2.2\\\", 问题背景:前几天在做一个登录的小demo,然后因为没有怎么理解代码就跟着敲,然后运行的时候浏览器控制台就报错:TypeError:_ctx.$t is not a function when using $t in child component,如下图:  然后我就百度了一下i18n是什

    2024年02月16日
    浏览(44)
  • TypeError: defineConfig is not a function

    场景:当我们在做打包配置的时候,出现如下错误 原因:由于用vue-cli直接创建了vue 3的项目,而里面的生态并非都是最新版,vue.config.js中的代码如下,使用了vue 3的语法:    解决:输入  vue upgrade, 一路向下,即可解决

    2024年02月12日
    浏览(46)
  • TypeError: loaderUtils.getOptions is not a function

    webpack 版本: ^5.89.0 但是直接 pnpm add loader-utils 安装的版本比较新,会报错: TypeError: loaderUtils.getOptions is not a function 。 解决方案:将低 loader-utils 版本,我这里使用 ^2.0.0 就不会再报这个错误了 思路:直接去 github 里面搜索 loaderUtils.getOptions 看看别人的版本是如何设置的,如

    2024年02月02日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包