js小练习settimeout应用,有两个问题

小练习实现 一个导航栏 效果如图。问题1:脚本第138行 内的正则表达式 (^|) (|$)在这里是表达什么意思? |是那个按位或吗 这里加一个| 是什么意思?问题2:我自己 子导航栏 写了多个span 最后在168行 和186行报错 cannot read property style of undefined 且鼠标移过没有反应,而按照案例他的写法 写了一个span 就不会报错 是何原因?问题3:第180行 (event||window.event).cancelBubble=true; 对于这种表达式 括号里的逻辑或运算结果不应该是布尔值吗 那是怎么取到那个对象的?问题4:第140 156行 for循环 i=0 i<.length 在c语言中是数组越界 为什么js中不报错?第161行为什么内层循环 的循环变量为什么可以继续用i?
最新回答
心素如简人淡如菊

2024-05-02 01:01:40

  1. '|'是正则的元字符“或”,不是位运算的按位或。(^|):分组匹配输入字符串的开始位置或任意位置。(|$)同理。

  2. “subnav”是“id" 为什么要通过 byClass 获取呢?

  3. JavaScript中逻辑运算返回一个指定操作数的值。

  4. 在C语言中这种情况也不会越界吧。

  5. 函数执行时会创建单独的变量作用域。