这是我的代码

var isNew = true

function limb(a,b)
{
    if (isNew=true)
    {
        post(a,b);
        isNew = false;
        post ("first");
    }
    else
    {
        post(a,b);
        post ("not first");
    }
}


我遇到的问题是,永远不会触发else条件。我假设isNew的值从未更新,但我不知道为什么。

最佳答案

在某些语言中,=既用于分配值也用于比较它们。 JavaScript为此使用不同的运算符。

x = 10始终表示“将x设置为10,并给我x的值”。
x == 10始终表示“告诉我,如果x等于10”。

因此,您的状况本可以是if(isNew == true)并且可以正常工作。您也可以只放入if(isNew)

关于javascript - jscript如果用于全局变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6770699/

10-11 15:02