问答详情
源自:4-1 细节优化及扩展(一)

list[i].i=i;是什么意思啊

list[i].i=i;是什么意思啊

提问者:冥冥之中跟你走 2015-07-28 23:00

个回答

  • arlenhui
    2015-07-29 09:10:19
    已采纳

    list数组的第i+1项的i属性赋值一个值为i的值。i属性就是i属性,不需要代入数字

  • 木刻雪原
    2015-12-08 00:28:12

    说白了  就是  定义一个 变量,类似于 var a=1;

    跟var a=1 不同的是:

    var a=1 就是定义 一个a变量,将1赋值给a;

    list[i].i=i  就是定义一个 i  但是这个 i 属于list[i] 仅有,然后将当前for循环中 i 的值 赋值给list[i].i  ;

    其实老师这样写  不容易理解 ,换一种写法  

    list[i].a=i  ,就是 定义一个 a ,然后将 for循环中 i 的值 赋值给 a ,最后将 a 变成 list[i] 的属性;

    例子:

    假设存在list数组,且长度为5;

    for(var i=0;i<list.length;i++){
        list[i].a=i;
        document.write(list[i].a);
    }
    
    上面这段代码输出的结果是 0 1 2 3 4
    
    分析:当i=0,list[i].a=i 即变成 list[0].a=0 保存在内存中;
          当i=1,list[i].a=i 即变成 list[1].a=1 保存在内存中;
          ......
          
          最后在内存中保存的一共就是0~4这5个数,对应的访问方式为list[0].a ~ list[4].a;