V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Destiny97
V2EX  ›  问与答

我网页知识很基础,帮别人写个微信小程序碰到一个很奇怪的问题

  •  
  •   Destiny97 · 2019-04-21 15:22:16 +08:00 · 1641 次点击
    这是一个创建于 951 天前的主题,其中的信息可能已经有所发展或是发生改变。

    EFnRL4.jpg

    db.collection('bikeManage').get()
          .then(res => {
            that.setData({
              bikeList: []
            })
            var bikeLists = [];
            for (var i = 0; i < res.data.length; i++) {
              list.bikeID = res.data[i].bikeID;
              //console.log(res.data[i].bikeID)
              if (res.data[i].showOnMap) {
                list.showOnMap = "正常";
              } else {
                list.showOnMap = "未投入";
              }
              console.log(list)
              bikeLists.push(list);
            }
    

    不懂就要问,是我写错了还是怎么回事,不能理解图片的结果

    9 条回复    2019-04-21 22:15:19 +08:00
    Destiny97
        1
    Destiny97   2019-04-21 15:29:49 +08:00
    最后一个的 bikeID 是 test1,为什么会出现图片上的结果,不知道为什么
    yxwzaxns
        2
    yxwzaxns   2019-04-21 15:50:12 +08:00 via iPhone   ❤️ 1
    var 换成 let
    stillsilly
        3
    stillsilly   2019-04-21 16:11:22 +08:00   ❤️ 2
    你指的是为什么这两个值不一样吗?
    https://s2.ax1x.com/2019/04/21/EFlzxx.jpg
    因为 console.log 一个对象的时候,保持着对这个对象的 [引用] ,点开的时候,显示的是最新的值,
    比如这样:
    https://s2.ax1x.com/2019/04/21/EF1QeS.jpg
    Destiny97
        4
    Destiny97   2019-04-21 16:36:02 +08:00
    @stillsilly 原来如此,js 很菜,现学了点,谢谢
    jokyme
        5
    jokyme   2019-04-21 18:06:16 +08:00   ❤️ 1
    list 泄漏到全局变量里面去了。list 要先在循环里面定义 const list = {},另外,定义变量不要用 var,用 let 或 const 代替
    agdhole
        6
    agdhole   2019-04-21 18:28:23 +08:00 via Android   ❤️ 1
    用 了 let const,建议看教程去 mdn,不要被 csdn 的乐色文毒害了
    Destiny97
        7
    Destiny97   2019-04-21 22:13:06 +08:00 via Android
    @jokyme 嗯,我就是这样改了,好了,谢谢
    Destiny97
        8
    Destiny97   2019-04-21 22:13:31 +08:00 via Android
    @jokyme
    @agdhole 好的,我去查查 var 和 let 的区别
    Destiny97
        9
    Destiny97   2019-04-21 22:15:19 +08:00 via Android
    我也是服了有些写博客的人,就直接复制别人的,错的也复制,害人不浅,之前学 uboot 的时候快被坑死了
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1174 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 18:54 · PVG 02:54 · LAX 10:54 · JFK 13:54
    ♥ Do have faith in what you're doing.