收藏
回答

遇到鬼了,关于number转string问题?

this.setData({

text1: '\n cpu得分:' + int1 + '排名' + cputotal


cputotal是number类型,log时候能调试出来,放在这里就读不出来了额 其实是下面问题:数据库回调函数如何访问全局变量?

db.collection("shouji").where({

cpu: _.gte(int1)

}).count({


success: function (res) {

console.log("cpu测试排行开始11")

console.log("cpu测试排行开始11q")

cputotal = res.total

s1 = cputotal

console.log( s1)

// console.log(res.countResult.total)

cpuint = cputotal

console.log("cpu测试排行结束")

}

})

只要代码一出去,s1就没了,在函数内正常



最后一次编辑于  2019-12-14
回答关注问题邀请回答
收藏

3 个回答

  • 老张
    老张
    2019-12-14

    异步问题。

    2019-12-14
    有用
    回复
  • 罗在
    罗在
    2019-12-14

    db.collection("shouji").where({

    cpu: _.gte(int1)

    }).count({


    success: function (res) {

    console.log("cpu测试排行开始11")

    console.log("cpu测试排行开始11q")

    cputotal = res.total

    是在数据库里给cputotal=的,到了外面又变空了

    2019-12-14
    有用
    回复 2
    • 黯伢zz
      黯伢zz
      2019-12-14
      回调函数的意思就是在函数之外的代码无法得到返回的结果,因为设置完回调后js会继续执行下去,你应该在回调函数中说明"拿到了数据后要怎么做",而不是在回调函数外面问“我怎么获取到回调函数返回时才有的数据”,所以setData放到回调函数中就行了。
      2019-12-14
      1
      回复
    • 罗在
      罗在
      2019-12-14回复黯伢zz
      谢谢大侠,是这样的,我再试试
      2019-12-14
      回复
  • 微蓝色雪狐
    微蓝色雪狐
    2019-12-14

    尝试一下 text1 :( '\n cpu得分:' + int1 + '排名' + cputotal

    2019-12-14
    有用
    回复
登录 后发表内容
问题标签