CDN引用lodash报错 _.debounce is not a function

作者:J.sky · 发表于:
2023-06-08T10:23:40.000000Z
· 更新于:
2023-08-13T22:54:57.615618Z
· Tag: lodash bug

今天有一段代码需要用到JavaScript的防抖功能,忽的想起lodash中有这个功能函数,由于代码比较简单,只需直接引用CDN即可,便在网上搜了CDN直接引入,但是在使用_.debounce方法的时候却报错_.debounce is not a function!真是奇了个怪了!

问题分析及解决方法

然后我就做了一些简单的测试,通过log打印一些lodash中的方法和属性,发现_.VERSION可以正常的打印lodash的版本,但是_.debounce确报错_.debounce is not a function!这怎么回事?难道这个CDN的代码库里没有debounce这个方法?哎!还真没有!

原来是我引用的CDN的代码有问题,我引用的是lodash.core.min.js,这是 Lodash 的核心版本,包含了 Lodash 库中的核心函数和常用功能,但不包含一些较大或较少常用的模块。所以有些功能是没有的,后来换成lodash.min.js,这是 Lodash 的完整版本,包含了 Lodash 库的所有函数和功能模块。这个版本的文件大小较大,适合在拥有较大资源或需要使用 Lodash 的所有功能时使用。

总结来说,lodash.core.min.js 是 Lodash 的精简核心版本,只包含核心函数和常用功能,文件较小;而 lodash.min.js 则是完整版本,包含了所有函数和功能模块,文件较大。这下问题解决了。。。好久没写JavaScript,真的都是把学到的东西都给忘记了。太菜了!