-4

変数 CampaignType があり、その値は 0 です。しかし、アラート (二重星の内側) では 1 に変わります。なぜですか? ここに私のJavaScriptコードスニペットがあります

      if (CampaignType != 2) 
      {
       if (CampaignType = '1') 
        {
            **alert(CampaignType);**
            var CampaignAmount = (SelValue * CampaignPrice) / 100;
            SelValue = SelValue - (CampaignAmount);

        }
        else if (CampaignType = '0')
        {
            SelValue = SelValue - CampaignPrice;

        }
    }
4

4 に答える 4

5

=代入演算子です。

==比較演算子です。

===恒等演算子です。

JavaScript で比較する方法を見てみましょう。

コードは次のようになります。

if (CampaignType != 2) 
  {
   if (CampaignType == 1) 
    {
        alert(CampaignType);
        var CampaignAmount = (SelValue * CampaignPrice) / 100;
        SelValue = SelValue - (CampaignAmount);

    }
    else if (CampaignType == 0')
    {
        SelValue = SelValue - CampaignPrice;

    }
}
于 2012-08-10T11:58:57.637 に答える
2

値 1 を に代入していますCampaingType:

CampaignType = '1'

比較したい場合:

CampaignType == '1'
于 2012-08-10T11:58:39.327 に答える
1

割り当てている場合は、次のようにします。

if (CampaignType == '1') 
于 2012-08-10T11:57:34.907 に答える
1

それはあなたが評価しているのではなく、値を設定しているためです

使用する

if (CampaignType === '1') //if you also want to verify they are the same type

if (CampaignType == '1') //if you do not want to verify if they are the same type
于 2012-08-10T11:57:41.810 に答える