关于自定义属性的问题和关于this的问题···一直不明白,求大佬
javascript吧
全部回复
仅看楼主
level 6
misz😄
楼主
2019年11月29日 05点11分
1
level 6
国际坏种
for循环定义好了就执行完了,var相当于在全局声明了一个变量 此时i最后一次++就是4 索引从0开始也就是第五个按钮,但是没有第五个按钮 oad[4]就是undefined,undefined当然没有属性abc
2019年11月29日 06点11分
2
misz😄
我想不明白的一点就是我用图一this指向oad[i]就没问题,不用this指向,就直接用oad[i]它就疯狂给我报错····哎~其中的原理不怎么懂···
2019年11月29日 06点11分
misz😄
你的意思是我开始for循环定义好了就已经执行完了,所以我oad[i].abc的值为undefined,我这样理解对吗?
2019年11月29日 06点11分
国际坏种
@misz😄
当你执行回调函数的时候,函数内部先找i找不到往父作用域也就是全局作用域去找,然后找到了4
2019年11月29日 07点11分
misz😄
@国际坏种
噢噢···我大概明白了
2019年11月29日 07点11分
level 6
国际坏种
this在这里指向调用它的对象,哪个按钮触发的事件它就指向谁
2019年11月29日 06点11分
3
level 6
国际坏种
还有,你的命名注意下,养成习惯,o开头第二个大写,要有点意义
2019年11月29日 06点11分
4
level 6
国际坏种
你的第二种写法,var改成let就行了,或者用立即执行函数包裹一层传递i
2019年11月29日 06点11分
5
1