问答详情
源自:10-1 编程挑战

oLis[i].index = i;这行代码什么用?

oLis[i].index = i;就是i的值赋给oLis[i]的索引,就是说oLis[0].index =0;oLis[1].index = 1;。。。可是定义数组的时候oLis[i]就很显而易见的索引就是i,这样让人觉得多此一举,但是我去掉这句话显示结果又不对。。。不懂

提问者:qq_梦里_0 2016-08-15 10:49

个回答

  • 刘毅毅
    2016-11-13 02:23:50

    我开始也觉得多此一举,问题出在以为index就是前面讲的indexOf(),然而它只是随意定义的变量(确实也蛋疼,教程从头到尾都没有见过olis[i].xxx这种定义方法),作用就像楼上说的,是建立起li组和div组的关系。

  • 朝花bu夕拾
    2016-09-04 19:41:27

    都不知道上面的在说什么

  • iizteng
    2016-08-19 11:07:59

    同样的疑惑,不过楼上的回答还是没看懂

  • 水里有条鱼
    2016-08-15 14:43:24

    并不是无意义的,看代码

    this.className="on";  //组长参赛

    odivs[this.index].className=""; //组员参赛

    我们发现并不是olis真正用到index这个属性,而是odivs,这个道理很简单,我们把它看为一个组的(两个人),像报名参赛的小组(触发事件)举手

    好了,组长olis_i举手了,所以第i组的人都参加比赛,组员odivs_i也要跟着参赛

    oLis[i].index = i;就相当于把olis定义为第i组长