收藏
回答

js如何让引号里的字母代表数字

for(let m=0;m<10;m++){
    this.setData({
      ‘list[0].shows[m]’: this.data.list[0].pages[i+m].title
    })
}

如何让让引号里的字母m代表for循环中的数字m,而不是单单一个string 试过用“”和+连接都没有用。。。

回答关注问题邀请回答
收藏

2 个回答

  • 卢霄霄
    卢霄霄
    2018-12-24

    建议还是用隔壁楼的第一种写法,如果非要用+ 和 ",应该这么写

    this.setData({

    ["list[0].shows[" + m + "]"]: this.data.list[0].pages[i+m].title

    })

    哦,看错了,我的意思是建议在for循环外面setData。。obj定义到for循环之前。。哈哈哈哈

    2018-12-24
    有用 1
    回复 2
    • 小成在努力
      小成在努力
      2018-12-24

      还有,就是怎么彻底删除数组中的元素?不是置空

      2018-12-24
      回复
    • 卢霄霄
      卢霄霄
      2018-12-24回复小成在努力

      用splice把指定项清除之后,重新setData({list:this.data.list})

      2018-12-24
      1
      回复
  • 半寸灰
    半寸灰
    2018-12-24


    1

    for(let m=0;m<10;m++){

    let obj={};

     obj[`list[0].shows[${m}]`]=this.data.list[0].pages[i+m].title

        this.setData(obj)

    }





    2

    for(let m=0;m<10;m++){

        this.setData({

          [`list[0].shows[${m}]`]this.data.list[0].pages[i+m].title

        })

    }


    2018-12-24
    有用 1
    回复
登录 后发表内容