说是不能读取classList这个属性,我写的代码是这样的

      let lis = document.querySelectorAll(".tab .tab-item");let divs = document.querySelectorAll(".products .main");for (let i = 0; i < lis.length; i++) {lis[i].addEventListener("click", function () {document.querySelector(".tab .active").classList.remove("active");this.classList.add("active");console.log(this);document.querySelector(".products .active").classList.remove("active");divs[i].classList.add("active");});}

写到divs[i]这里一直报错,我打印是undefined,我就一直想不通

直到我看见了for循环里面的i,for循环里面的i如果不声明默认是全局变量,如果不加let就会出问题

至于为什么,我搜了一下,说是

用 var 声明时,变量 i 是唯一的,每一次 i 的改变都改变了自身的栈地址。
所以循环结束后访问 i 时,都通过 i 最后一次存放的栈地址,获取到其指向的基本量。

虽然我也没太看懂,但是

一定要记得写let!!!!!

关于原生js里报这个错:Cannot read properties of undefined (reading ‘classList‘) at HTMLLIElement.相关推荐

  1. echarts 报错Cannot read properties of undefined (reading ‘coord‘)

    由于项目需要,我使用了echarts的北京AQI可视化图,即下图这种 他里面的visualMap属性如下 visualMap: {top: 50,right: 10,pieces: [{gt: 0,l ...

  2. Uncaught TypeError: Cannot read properties of undefined (reading ‘push’) ---- vue-router报错

    坑点 在使用vue-router@4的时候,由于vue3中没有this.router这个写法,所以我就将解构router方法,放在了函数中,由于函数有作用域就报了这个错误:Uncaught TypeE ...

  3. react 谷歌浏览器报错:Uncaught TypeError: Cannot read properties of undefined (reading ‘forEach‘)

    运行react项目,报错: Uncaught TypeError: Cannot read properties of undefined (reading 'forEach')at Object.i ...

  4. Vue报错:Error in v-on handler: “TypeError: Cannot read properties of undefined (reading ‘skuId‘)“

    背景: 当点击按钮时候,正常情况控制台的Network应该要发送一个变化量,现在控制台的Network不仅不显示,而且还报错,报错信息如下: vue.runtime.esm.js?c320:619 [ ...

  5. 修复报错 Error in render: “TypeError: Cannot read properties of undefined (reading ‘xxx‘)“

    请求接口时,能够完整渲染出整体界面无问题,但是一刷新所渲染的界面就没了,并且开发者工具报出"Error in render: "TypeError: Cannot read pro ...

  6. vue-router.esm.js?ac56:2316 TypeError: Cannot read properties of undefined (reading ‘$createElement‘

    报错: vue-router.esm.js?ac56:2316 TypeError: Cannot read properties of undefined (reading '$createElem ...

  7. vue路由跳转控制台出现:vue-router.esm.js?8c4f:2316 TypeError: Cannot read properties of undefined (reading ‘$c

    vue路由跳转控制台出现:vue-router.esm.js?8c4f:2316 TypeError: Cannot read properties of undefined (reading '$c ...

  8. Vue安装axios后报错:Cannot read properties of undefined(reading ‘use‘)

    Vue安装axios后报错:Cannot read properties of undefined(reading 'use') 话说这个错误百度了一下午都没解决 直到我发下我用的是Vue3.x 于是 ...

  9. vue5版本使用cil,运行后启动app界面空白,浏览器报Cannot read properties of undefined (reading ‘prototype‘)

    初学vue使用vue ui功能展开界面无反应,发现需要3.0以上版本才能使用ui命令,于是就进行了更新,更新到了最新的5.0.4版本,ui命令能够成功唤起浏览器打开页面 搭建项目添加依赖和插件后,点击 ...

最新文章

  1. python语法书籍推荐_python语法的书
  2. 不伦不类的Action Script 3.0
  3. AI基础:机器学习简易入门
  4. 线程池状态和使用注意点
  5. 特别策划:视频会议协作平台的机会与技术挑战
  6. java 反射 构造方法_Java反射之构造方法反射
  7. Car-like Robot运动模型及应用分析
  8. 杨森翔的书法(对联、斗方、圆光)
  9. 1.Windows下 PHP 开源框架 laravel 的搭建
  10. 看看你的密码有多安全?
  11. 最新PP点点通V2008简体中文版免费下载
  12. 我国街景地图向何处去
  13. dnc开源梦之队2018 开源项目精选集
  14. MySQL自学笔记(二)
  15. IOS UTI(统一类型标识符) 根据文件后缀打开APP
  16. 编程课python和c+对中高考_编程要进入高考了。
  17. 《中文核心期刊要目总览(2014年版)》——计算机、自动化类
  18. Lanenet 车道线检测网络模型学习(论文解读+官方模型)
  19. 十年沉浮,Web2 到 Web3 的转变之路
  20. 小学生趣味C++编程第27课 老狼老狼几点钟

热门文章

  1. 水泥cement或英语caement水泥
  2. 颜色的前世今生9·HSV色彩空间之父——匠白光
  3. 遍身罗绮者 不是养蚕人
  4. 架构之重构的 12 条军规
  5. html 文字输出语音,网页上通过JS实现文本的语音朗读
  6. U盘文件如何恢复?u盘还原,必学的4招(2023已更新)
  7. 数字化时代,基于令牌的身份验证是如何工作?
  8. 3.3 CPU共享功能
  9. SQL中实用的小技巧
  10. 单点定位2米精度?这张卡差点干掉了RTK(内有轨迹对比图)