比方說,我們有:jQuery:當jQuery對象無法找到指定的類選擇器時,jQuery會返回什麼?
var $letsTestA = $('.lets-test-a'),
$letsTestB = $('.lets-test-b');
雖然HTML是:
<div class="lets-test-a"></div>
(我知道,我離開了.lets-test-b
)
現在,如果我們試圖調用變量會發生什麼$letsTestB
?
我做了一些測試,我不只是一味地問一個問題不首先做一些研究,但我有多麼這看似有點困惑...
如果我alert($letsTestA);
或alert($letsTestB);
從JSFiddle測試時,我得到的結果只是[object Object]
?
這裏是我的測試小提琴:https://jsfiddle.net/m6j03423/
而且這,就是我其實想在這裏做的是創建一個辦法,找出一個變量的內容是否存在。
在PHP中,我只會寫if (empty($myVar)) { // do action }
,但JS不會以相同的方式工作。
在JS中,我認爲我可以寫if ($letsTestA) { }
,它應該能夠打印變量的結果?但是,我仍然得到[object Object]
。
我錯過了什麼?
我還可以打印jQuery對象的內容嗎?
如何測試變量是否包含jQuery對象的真實值?
編輯: 不可否認,我確實看到了幾個不同的答案說,檢查的長度,但我不明白足以連接到我在做什麼。
你沒有打印出來,你報警吧。將其記錄到控制檯並從那裏開始。 –
只記錄它並檢查控制檯 – sTx
jQuery選擇器* always *返回一個jQuery對象 - 因此爲什麼沒有錯誤,以及爲什麼jQuery容忍在不存在的元素上調用方法。有時候,jQuery對象包含一個或多個元素,其他時候如果沒有找到,它將是空的。要檢查這個使用'length'屬性。如果你還沒有,我強烈建議你閱讀http://learn.jquery.com/ –