1
最近,我一直在努力處理JavaScript的鬆散類型。我一直在編寫一個程序,用於調用API來獲取數據,並將結果數據存儲在自定義類中。自定義類的其中一個值是日期,該日期應該是Date
類型。在創建對象之前,我總是將日期值轉換爲合適的Date
對象,然後將其傳遞給構造函數。對象不斷失去他們更具體的類型?
以供參考,這是類的樣子:
class Item {
constructor(title, date) {
this.title = title;
this.date = date;
}
}
然而,當我試圖檢索日期值,後來把它比作另一個日期值,它似乎已經恢復到正常對象類型,因爲控制檯聲稱item.date.compare
不是函數。記錄表明對象的類型是一個通用對象,但它是Date
的一個實例。但我一直無法弄清楚如何將其視爲特定的對象。
截至目前我已經嘗試鑄造,它沒有工作。也就是說,我嘗試過item.date as Date
以及Object.create(Date, item.date)
。迄今爲止都沒有工作。我錯過了什麼?
沒有看到參與處理該值的代碼,就很難說了。 – Pointy
您需要向我們展示您的代碼的最低工作版本。另外,你正在製作一個「Item」的「實例」,對嗎? –
有些東西正在改變變量,就是這麼簡單。任何時候你使用這個變量,確保你的console.log的值和類型。此外,他們所說的 - 更多的代碼,或者除了含糊的建議之外,我們無法提供幫助。 – SeanKendle