2 回答

TA貢獻1794條經(jīng)驗 獲得超8個贊
比較來自不同來源的字符串可能會導(dǎo)致意外結(jié)果。
您可以做的一件事是將您的值轉(zhuǎn)換為相同的類型,然后進行比較。例如:
if (intval('1') === intval('01')) ...
這樣你就可以得到整數(shù)的兩側(cè),它只是一個整數(shù)比較。
請注意,如果您轉(zhuǎn)換一個非數(shù)字的值,該函數(shù)將始終返回 0

TA貢獻1808條經(jīng)驗 獲得超4個贊
那可能是您使用==
而不是===
. 如果您不想考慮案例,我可能會建議使用strcasecmp
,或者strcmp
如果您希望考慮案例,我可能會建議使用。
注意將這些函數(shù)的結(jié)果與 0 進行比較,===
以確保它們相等,例如: if (strcmp('Hello, 'Hello') === 0) ...
使用時要注意==
和===
(1 == '1') //Equal -- not taking into consideration the type but just the value
(1 === '1') //Not equal -- taking into consideration the type and the value
僅供您參考,不供您使用!=
或!==
- 2 回答
- 0 關(guān)注
- 214 瀏覽
添加回答
舉報