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

 更新时间:2023年08月05日 10:09:02   作者:雷特IT  
这篇文章主要给大家介绍了关于JS报错Uncaught TypeError: XXX is not a function的解决方法,本来好好的,突然就出现的错误,不过这并不是什么难解决的错误,需要的朋友可以参考下

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

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

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

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

下面是我的代码:

let a = +prompt(`请输入第一个数:`)
        let b = +prompt(`请输入第二个数:`)
            // let sum = 0
            // console.log(a, b)
            // 新方法,匿名函数
            (function (a, b) {
                console.log(a + b)
            })(a, b)

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

于是我在后面加上了分号:

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

然后我就想着会不会是加错地方了,因为错误提示说promp有问题,所以我决定把分号加到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)

总结

到此这篇关于JS报错Uncaught TypeError: XXX is not a function解决方法的文章就介绍到这了,更多相关Uncaught TypeError: XXX is not a function内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 15个简单的JS编码标准让你的代码更整洁(小结)

    15个简单的JS编码标准让你的代码更整洁(小结)

    这篇文章主要介绍了15个简单的JS编码标准让你的代码更整洁(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • JavaWeb表单及时验证功能在输入后立即验证(含用户类型,性别,爱好...的验证)

    JavaWeb表单及时验证功能在输入后立即验证(含用户类型,性别,爱好...的验证)

    最近做项目遇到表单在输入后立即验证,而不是提交后再验证,在网上找了下资料,没有合适的,于是我自己动手写了一个,分享到脚本之家平台,供大家参考
    2017-06-06
  • JS操作iframe里的dom(实例讲解)

    JS操作iframe里的dom(实例讲解)

    本篇主要是对JS操作iframe里的dom进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2014-01-01
  • JavaScript中的变量声明早于赋值分析

    JavaScript中的变量声明早于赋值分析

    JavaScript中的变量声明早于赋值分析,需要的朋友可以参考下
    2012-03-03
  • JavaScript判断数组的方法总结与推荐

    JavaScript判断数组的方法总结与推荐

    这篇文章主要给大家介绍了关于JavaScript判断数组方法的相关资料,文中通过实例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2022-02-02
  • 对TypeScript库进行单元测试的方法

    对TypeScript库进行单元测试的方法

    这篇文章主要介绍了对TypeScript库进行单元测试的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • javascript循环链表之约瑟夫环的实现方法

    javascript循环链表之约瑟夫环的实现方法

    这是一道比较经典的循环链表问题,在华为上机笔试中也出现过。 约瑟夫环是一个数学的应用问题,下面这篇文章主要就给大家介绍了javascript循环链表之约瑟夫环的实现方法,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-01-01
  • 初探JavaScript 面向对象(推荐)

    初探JavaScript 面向对象(推荐)

    js 面向对象知识是最基础的入门知识点,下面通过本文实例代码给大家详细介绍js 面向对象的知识,感兴趣的朋友一起学习吧
    2017-09-09
  • JavaScript对象创建模式实例汇总

    JavaScript对象创建模式实例汇总

    这篇文章主要介绍了JavaScript对象创建模式,结合实例形式总结分析了JavaScript常见的对象创建模式,包括工厂模式、构造函数模式、原型模式、动态原型模式、寄生构造函数模式、稳妥构造函数模式等,需要的朋友可以参考下
    2016-10-10
  • Javscript删除数组中指定元素并返回新数组

    Javscript删除数组中指定元素并返回新数组

    把数组中某个值删除,并返回新数组,需要遍历旧数组找到要删除的元素,下面有个不错的示例,大家可以参考下
    2014-03-03

最新评论