weixin_44816039
云木one
采纳率5.9%
2019-09-30 10:30

JS中一个函数里的变量值,怎么可以直接在另外一个函数里用引用

下面是函数中,通过函数计算得到gwp的值并判断绘图。
后面我想把这个计算得到的gwp的值直接在其他函数中调用,应该怎么改
比如gwp改成全局变量,麻烦指导下,有代码就更好

$(function(){
var dom = document.getElementById("box4");
var myChart = echarts.init(dom);
var app = {};
option = null;
var y_f = [];
//全局变量,wgid在gognweizongtu.js中获取
var gwp = 0;
var xishu = [0.4,0.2,0.3,0.1];
var pjx = ["gzp","gyp","wlp","ryp"];
var pj = {"gongzhuang":"OK", "gongyi": "OK", "wuliao": "OK", "renyuan": "OK"};
var guige = [90, 90, 80, 75,85];
var xiang = ["gongzhuang","gongyi","wuliao","renyuan"];
for (var i = 0 ; i< xiang.length ; i++) {
    var lent = data[xiang[i]].y.length ;
    var ind = lent - 1 ;
    y_f.push(data[xiang[i]].y[ind]);
    if (data[xiang[i]].y[ind] < guige[i]){
        pj[xiang[i]] = "NOK";
    }
    document.getElementById(pjx[i]).innerHTML = pj[xiang[i]];
    gwp += y_f[i]*xishu[i];
}
y_f.push(88);
if (gwp > 85.5){
    document.getElementById("gwpj").innerHTML ="OK";
}
gwp = gwp.toFixed(2);
document.getElementById("gwp").innerHTML =gwp;
document.getElementById("jinri").innerHTML =gwp;
document.getElementById("zuori").innerHTML =gwp;
document.getElementById("benzhou").innerHTML =gwp;
document.getElementById("lishi").innerHTML =gwp;
document.getElementById("gwp1").innerHTML =gwp1;
/*绘图代码省略*/
};
if (option && typeof option === "object") {
    myChart.setOption(option, true);
}
})
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

4条回答

  • caozhy 从今以后生命中的每一秒都属于我爱的人 2年前

    最好不要用全局变量,调试起来麻烦死了。可以用回调函数return返回值传出去

    就你的代码来说,你已经
    document.getElementById("gwp").innerHTML =gwp;
    了,那么另一个程序从这个html表单里获取就是了。

    点赞 2 评论 复制链接分享
  • qq_38545450 咕咕轩 2年前

    如果想要=变成全局变量

    var gwp = 0
    $(function(){
        // 计算gwp
        gwp++
    })
    function getGwp() {
        console.log(gwp)
    }
    
    getGwp()   //  1
    
    

    但要注意获取gwp值的时间,一定要在你计算完成之后再去获取,否则就是0

    点赞 评论 复制链接分享
  • zea_liu zea_liu 2年前

    如果不用全局变量的话直接return 即可,
    例如
    function getValue(){
    var a ="123";
    return a;
    }
    var b =getValue();
    那么这个b的值就是123

    点赞 1 评论 复制链接分享
  • guangcaiwudong Kevin.Y.K 2年前

    把var gwp = 0;放在$(function(){})上面,其他function直接使用gwp即可

    点赞 评论 复制链接分享

相关推荐