以下兩項中的每一項都包含相同的字符串值,但使用'==='的比較返回false。在JavaScript中,兩個「平等」字符串的== ==比較何時會返回false?
(hiddenColumns[hidenColsIndex] === cells[metricColsIndex].columnName)
此相比,在使用 '==' 返回true
(hiddenColumns[hidenColsIndex] == cells[metricColsIndex].columnName)
爲什麼?
如果該聲明是真實的'==='比較返回'false',那麼它們**不是**相同的字符串值。也許一個是數字,另一個是該數字的字符串版本。 – Pointy
我們需要更多的信息。您可以使用JSON.stringify來檢查並向我們顯示這些字符串。 – Bergi
三重相等運算符不僅意味着值必須相等,而且它們的類型也相同。在兩者上輸入'typeof()',看看你得到了什麼。 – sachleen