无法解释的错误,html中的undefined var

时间:2014-07-17 13:02:42

标签: javascript html undefined formula

我正在启动程序员,对于作业,我应该在代码中转换公式。 我的想法是,我首先使用静态变量测试公式,后者将以滑块的形式变为动态,输出一个警告框,其中包含公式的答案。 但是,当我编译代码时,警报返回undefined。 我错过了具体的东西吗?

继承代码;

<script>


    alert(CapaciteitAanvang);
    var CapaciteitAanvang = SliderVeegbreedte *SliderVeegsnelheid * 1852 * b12() * 0.001 * SliderWindsnelheid ;

        var SliderWindsnelheid = 8;

        var SliderMobilisatie = 2;

        var SliderVaartijd = 6;

        var SliderVolume = 100;

        var SliderVeegbreedte = 100;

        var SliderVeegsnelheid = 2;

        var SliderDichtheid = 900;

        var SliderTemperatuur = 20;


        function b12(k) {
        if(D33()<=0.001)
        {k = 0;}
        else
        { k = (D33() / D29) * Math.pow(10, -3);}
        return k;
        }

        function D33(l) {       
        if((D30+D31)>= D32)
        {l = D32;}
        else
        {l = D32-(D30+D31);}
        return l;
        }

        var D29 = E95()

        function E95(j){
        if(G95<I95)
        {j = G95;}
        else
        {   if(K95>M95)
            {j = M95;}
            else
            {   if(I95<K95)
                {j = K95;}
                else
                {j = I95;}
            }
        }
        return j;
        }

        var D30 = SliderVolume * (1 / E37) * Math.log(((0.013 * E90 * 2200 * E39 * E37 * C147) / (0.082 * (E28() + 273) * SliderVolume) + 1));

        var D31 = SliderVolume * (1 - Math.exp(-7.6 * Math.pow(10, -5) * (E29()) * (C170) / Math.pow((SliderVolume - E147), 0.62) ));

        var D32 = SliderVolume;

        var G95 = 3.14 * Math.pow(1.14, 2) * Math.pow((((1025-SliderDichtheid)*9.81*SliderVolume)/1025), 0.5)*(Begintijd*3600)*Math.pow(10, -6);

        var I95 = (3.14 * Math.pow(1.45, 2) * Math.pow((((1025 - SliderDichtheid) * 9.81 * Math.pow(SliderVolume, 2)) / (1025 * Math.pow(0.0000013, 0.5))), (1 / 3)) * Math.pow((Begintijd * 3600), 0.5)) * Math.pow(10, -6);

        var K95 = 3.14 * Math.pow(2.3, 2) * (Math.pow(((Math.pow(0.025, 2)) / (Math.pow(1025, 2) * 0.0000013)), 0.5) * Math.pow((Begintijd * 3600), 1.5) * Math.pow(10, -6));

        var M95 = Math.pow(10, 5) * Math.pow(SliderVolume, 0.75) * Math.pow(10, -6);

        var E37 = Math.pow(1158.895 * (Begintijd / SliderDichtheid - 131.5), -1.144);

        var E39 = (3.339) * Math.pow(10, 31) * Math.pow((SliderDichtheid), (-10.905));

        var C147 = 3600* 42;

        function E28(h) {
            if ((0.0108 * Math.pow(J5, 2) +0.2045 * J5 - 0.2876) <= 0)
        {h = 0;}
        else
        { h = 0.0108 * Math.pow(J5, 2) + 0.2045 * J5 - 0.2876; }
        return h;
        }
        var E147 = SliderVolume * (1 / E37) * Math.log(((E48 * E90 * 2200 * E39 * E37 * C147) / (0.082 * (SliderTemperatuur + 273) * SliderVolume) + 1));

        var C170 = 3600 * A170;

        function E29(g) {
            if ((0.0108 * Math.pow(J5, 2) + 0.2045 * J5 - 0.2876) <= 0)
        {g = 0;}
        else
        { g = 0.0108 * Math.pow(J5, 2) + 0.2045 * J5 - 0.2876; }
        return g;
        }
        var J5 = SliderWindsnelheid;


        var E48 = 2.5 * Math.pow(10, -3) * Math.pow(SliderWindsnelheid, 0.78);

        function E90(f){
        if(G90<I90)
        {f = G90;}
        else
        {   if(K90>M90)
            {f = M90;}
        else
        {   if(I90<K90)
            {f = K90;}
            else
            {f = I90;}}}
            return f;
            }

        var G90 = 3.14 * Math.pow(1.14, 2) * Math.pow((((1025 - SliderDichtheid) * 9.81 * SliderVolume) / 1025), 0.5) * C90 * Math.pow(10, -6);


        var C90 = 3600* Begintijd;

        var I90 = (3.14 * Math.pow(1.45, 2) * Math.pow((((1025 - SliderDichtheid) * 9.81 * Math.pow(SliderVolume, 2)) / (1025 * Math.pow(0.0000013, 0.5))), (1 / 3)) * Math.pow(C90, 0.5)) * Math.pow(10, -6);

        var K90 = 3.14 * Math.pow(2.3, 2) * Math.pow(((Math.pow(0.025, 2)) / (Math.pow(1025, 2) * 0.0000013)), 0.5) * Math.pow(C90, 1.5) * Math.pow(10, -6);

        var M90 = Math.pow(10, 5) * Math.pow(SliderVolume, 0.75) * Math.pow(10, -6);

        var Begintijd = SliderMobilisatie + SliderVaartijd;

        var A170 = Begintijd;






</script>

编辑:只是一个小更新我似乎仍然得到相同的错误,但我改变了varbeles的顺序并添加了入口参数。

    var SliderWindsnelheid = 8;

    var SliderMobilisatie = 2;

    var SliderVaartijd = 6;

    var SliderVolume = 100;

    var SliderVeegbreedte = 100;

    var SliderVeegsnelheid = 2;

    var SliderDichtheid = 900;

    var SliderTemperatuur = 20;

    var Begintijd = SliderMobilisatie + SliderVaartijd;

    var J5 = SliderWindsnelheid;

    var D32 = SliderVolume;

    var A170 = Begintijd;

    var C90 = 3600 * Begintijd;

    var C170 = 3600 * A170;

    var C147 = 3600 * Begintijd;

    var E39 = (3.339) * Math.pow(10, 31) * Math.pow((SliderDichtheid), (-10.905));

    var M90 = Math.pow(10, 5) * Math.pow(SliderVolume, 0.75) * Math.pow(10, -6);

    var E37 = Math.pow(1158.895 * (Begintijd / SliderDichtheid - 131.5), -1.144);

    var M95 = Math.pow(10, 5) * Math.pow(SliderVolume, 0.75) * Math.pow(10, -6);

    var E48 = 2.5 * Math.pow(10, -3) * Math.pow(SliderWindsnelheid, 0.78);

    function E29(g) {
        if ((0.0108 * Math.pow(J5, 2) + 0.2045 * J5 - 0.2876) <= 0)
        { g = 0; }
        else
        { g = 0.0108 * Math.pow(J5, 2) + 0.2045 * J5 - 0.2876; }
        return g;
    }




    var K95 = 3.14 * Math.pow(2.3, 2) * (Math.pow(((Math.pow(0.025, 2)) / (Math.pow(1025, 2) * 0.0000013)), 0.5) * Math.pow((Begintijd * 3600), 1.5) * Math.pow(10, -6));

    var G95 = 3.14 * Math.pow(1.14, 2) * Math.pow((((1025-SliderDichtheid)*9.81*SliderVolume)/1025), 0.5)*(Begintijd*3600)*Math.pow(10, -6);

    var I95 = (3.14 * Math.pow(1.45, 2) * Math.pow((((1025 - SliderDichtheid) * 9.81 * Math.pow(SliderVolume, 2)) / (1025 * Math.pow(0.0000013, 0.5))), (1 / 3)) * Math.pow((Begintijd * 3600), 0.5)) * Math.pow(10, -6);







    var K90 = 3.14 * Math.pow(2.3, 2) * Math.pow(((Math.pow(0.025, 2)) / (Math.pow(1025, 2) * 0.0000013)), 0.5) * Math.pow(C90, 1.5) * Math.pow(10, -6);







    function E28(h) {
        if ((0.0108 * Math.pow(J5, 2) + 0.2045 * J5 - 0.2876) <= 0)
        { h = 0; }
        else
        { h = 0.0108 * Math.pow(J5, 2) + 0.2045 * J5 - 0.2876; }
        return h;
    }


    var G90 = 3.14 * Math.pow(1.14, 2) * Math.pow((((1025 - SliderDichtheid) * 9.81 * SliderVolume) / 1025), 0.5) * C90 * Math.pow(10, -6);

    var I90 = (3.14 * Math.pow(1.45, 2) * Math.pow((((1025 - SliderDichtheid) * 9.81 * Math.pow(SliderVolume, 2)) / (1025 * Math.pow(0.0000013, 0.5))), (1 / 3)) * Math.pow(C90, 0.5)) * Math.pow(10, -6);



    function E90(f) {
        if (G90 < I90)
        { f = G90; }
        else {
            if (K90 > M90)
            { f = M90; }
            else {
                if (I90 < K90)
                { f = K90; }
                else
                { f = I90; } 
            } 
        }
        return f;
    }     





    function E95(j) {
        if (G95 < I95)
        { j = G95; }
        else {
            if (K95 > M95)
            { j = M95; }
            else {
                if (I95 < K95)
                { j = K95; }
                else
                { j = I95; }
            }
        }
        return j;
    }

    var E147 = SliderVolume * (1 / E37) * Math.log(((E48 * E90 * 2200 * E39 * E37 * C147) / (0.082 * (SliderTemperatuur + 273) * SliderVolume) + 1));

    var D31 = SliderVolume * (1 - Math.exp(-7.6 * Math.pow(10, -5) * (E29(0)) * (C170) / Math.pow((SliderVolume - E147), 0.62)));

    var D29 = E95(0)

    var D30 = SliderVolume * (1 / E37) * Math.log(((0.013 * E90 * 2200 * E39 * E37 * C147) / (0.082 * (E28(0) + 273) * SliderVolume) + 1));

    function D33(l) {
        if ((D30 + D31) >= D32)
        { l = D32; }
        else
        { l = D32 - (D30 + D31); }
        return l;
    }

    function b12(k) {
        if (D33(0) <= 0.001)
        { k = 0; }
        else
        { k = (D33(0) / D29) * Math.pow(10, -3); }
        return k;
    }

    var CapaciteitAanvang = SliderVeegbreedte * SliderVeegsnelheid * 1852 * b12(0) * 0.001 * SliderWindsnelheid;
    alert(CapaciteitAanvang);

非常感谢遇险的新人。

2 个答案:

答案 0 :(得分:1)

您的alert声明之前赋值语句。

在为其指定值之前,它始终为undefined

答案 1 :(得分:0)

以上是正确的,CapaciteitAanvang是在下一行定义的,但是只是切换它们仍然会给你带来一个问题,因为用于创建CapaciteitAanvang的一些变量直到那个语句之后才被定义。您需要将所有变量定义移到顶部,然后在使用之前声明它们。