收藏
回答

二维数组改变某一个数组内的值,但是其他数组内的值也改变了,为什么?



最后一次编辑于  10-16
回答关注问题邀请回答
收藏

8 个回答

  • 老张
    老张
    10-16

    this.data.arr数组初始化的时候没有为每个元素预留空间,即没有绝对初始化。

    10-16
    赞同
    回复
  • 默认
    默认
    10-16

    你循环的时候应该获取两个数组索引的(一个是数组的,一个是数组里面的二维数组的索引) 你这只是获取了里面二维数组的里面的索引 因此会把每个数组里面的二维数组的数据改掉

    10-16
    赞同
    回复 5
    • 997
      997
      10-16
      哪里有循环?  我是根据下标改的
      10-16
      回复
    • 997
      997
      10-16
      二维数组arr是在onload的时候循环创建的   这是第二次调用
      10-16
      回复
    • 默认
      默认
      10-16回复997
      wxml页面 你用循环的时候 数组循环的时候可以获取到一个索引 二维数组循环的时候可以获取到一个索引的 索引获取格式为 data-index='{{index}}'
      10-16
      回复
    • 默认
      默认
      10-16回复997
      第一个红框为数组的索引 第二个红框第一个是获得的二维数组的索引 第二个是根据上面的数组索引获取到的 然后再事件里面就可以获取到你点击的是数组的第几个里面的二维数组的第几个 然后进行修改在setData就可以了 提示需要用到双层循环才能实现
      10-16
      回复
    • 默认
      默认
      10-16回复997
      标注:parentIndex 为数组的索引也就是父级数组的索引  cataIndex 为你点击的那个元素身上的索引 也就是二维数组的所以
      10-16
      回复
  • TseKakit🦀
    TseKakit🦀
    10-16

    因为代码写错了

    10-16
    赞同
    回复 1
    • 997
      997
      10-16
      我看了半天 没看出哪些错了 指点一下呀
      10-16
      回复
  • 陈子羽
    陈子羽
    10-16

    你看看是不是重复调用了方法,可以打印下日志就知道啦

    10-16
    赞同
    回复 3
    • 997
      997
      10-16
      我看了半天 没看出哪些错了 指点一下呀
      10-16
      回复
    • 陈子羽
      陈子羽
      10-16回复997
      你后台打印下日志看看吧,有可能你绑定了同一事件,或者事件向上传播了
      10-16
      回复
    • 997
      997
      10-16回复陈子羽
      this.data.arr  全局只调用了两次  一次是在onload的时候创建的二维数组  还有就是这次了   方法名没有重名的   我看看是不是向上传播了
      10-16
      回复
  • 爆竹声中一岁除
    爆竹声中一岁除
    10-16

    因为代码写错了

    10-16
    赞同
    回复
  • 初心
    初心
    10-16

    因为代码写错了

    10-16
    赞同
    回复
  • 子不语
    子不语
    10-16

    因为代码写错了

    10-16
    赞同
    回复 4
    • 997
      997
      10-16
      麻烦指点一下哪里写错了  我实在是没看出来
      10-16
      回复
    • 子不语
      子不语
      10-16回复997
      你这31个数组是怎么生成的?
      10-16
      回复
    • 997
      997
      10-16回复子不语
      找到原因了   生成二维数组的时候  两次for循环分开写的  没套在一起
      10-16
      回复
    • 子不语
      子不语
      10-16回复997
      ok
      10-16
      回复
  • 米法(BINNIE SMILE)
    米法(BINNIE SMILE)
    10-16

    因为代码写错了

    10-16
    赞同
    回复
问题标签