這不是一個實際問題,我只是需要一個解釋。在JavaScript中未定義的類型?
我有以下代碼:
var src = container.find('img').attr('src');
if(src === 'undefined') {
alert('No src');
}
當我火了控制檯和記錄它說,這是不確定的,但警報未開的SRC。調試這段代碼證明了以前的行爲。當我刪除if語句中的''並將未定義的類型作爲類型時,會觸發警報。
在另一方面,進一步降低我的代碼,我有這片:
var pathname = (window.location.pathname).split('/');
if(pathname[5] === 'undefined') {
alert('Something...');
}
每當控制檯說,路徑[5]是不確定的警報被觸發正確。
因此,我認爲在第一種情況下,undefined返回爲類型,第二種情況返回爲字符串。這是正確的,爲什麼這樣的行爲?
感謝您的所有智能答案!
' 「未定義」 == undefined' – elclanrs
只是如果(typeof運算SRC === '未定義')和它將被完成 –
undefined是一個類型而不是值... ===比較值和類型和!==說它在值或類型上不相等..不要與值混淆......你應該專注於操作員... ==比較值===比較值和類型 – AlvinArulselvan