我在一個函數中有一個參數將成爲一個圖像。現在我想對該對象進行一些檢查,例如,如果它未定義,並且如果不是對象中圖像的來源是什麼。如何將函數參數轉換爲圖像?
問題是,雖然我不能請求img.src
因爲變量只是一個非類型的參數。我正在考慮創建第二個Image()
對象,然後以某種方式用imgObject = img
解決它,但這看起來很愚蠢,可能無法正常工作。
那麼,我該如何在代碼中聲明一個參數是Image類型的參數,並且我想要爲該對象請求特定的Image類型方法?
我在一個函數中有一個參數將成爲一個圖像。現在我想對該對象進行一些檢查,例如,如果它未定義,並且如果不是對象中圖像的來源是什麼。如何將函數參數轉換爲圖像?
問題是,雖然我不能請求img.src
因爲變量只是一個非類型的參數。我正在考慮創建第二個Image()
對象,然後以某種方式用imgObject = img
解決它,但這看起來很愚蠢,可能無法正常工作。
那麼,我該如何在代碼中聲明一個參數是Image類型的參數,並且我想要爲該對象請求特定的Image類型方法?
這與變量打字無關。 JavaScript沒有變量的靜態類型,所以變量「只是一個未輸入的參數」是一個紅色的鯡魚。如果對象是圖像,則可以將其視爲圖像。如果把它當作圖像處理不起作用,那麼錯誤的事情就會傳遞給你的函數,這就是你需要解決的問題。
我相信你是對的。我對JavaScript很陌生,但我對Java有很多經驗,並且我很難區分將它們分開的原因。我沒有看到在IDE中彈出'.source'作爲一種可能的方法,所以我只是假定它必須是類型轉換的。但是,當然,瀏覽器是判斷而不是IDE。我認爲我提前寫過這個問題,所以一旦我確認我對這個問題的理由不是有效的,我就會投票結束它。 – AndroidHustle 2013-04-25 20:02:48
我不明白。請詳細說明。現在'var foo = new Image()'會創建一個新的圖像對象並將其引用到'foo'中。 – jAndy 2013-04-25 17:50:17
@jAndy謝謝。是的,我同意這個描述看起來很弱。我會更新它。 – AndroidHustle 2013-04-25 17:52:15
'param instanceof Image'可能是有用的,這取決於你想要做什麼。 – 2013-04-25 17:52:22