我將字串決議為浮點數,當我列印變數的型別時,我得到數字。但是,如果我將變數添加到陣列中,并從那里列印出來,我會得到字串。但是如果我然后索引點擊[0],我將再次獲得數字
let clicks = []
let latitude = parseFloat(stringCoords.substring(11, 28))
clicks.push(latitude)
console.log(typeof(latitude)) -- prints number
for (var object in clicks) {
console.log(typeof(object)) -- prints string
}
console.log(typeof(clicks[0])) -- prints number
我唯一添加到 clicks 陣列的是緯度變數。我很困惑為什么它會改變型別。請告訴我。
uj5u.com熱心網友回復:
所述的for..in通過具有所述型別的物件的屬性回圈string。而for..of通過迭代的物件,其中有什么的,你在它存盤的型別(根據你的情況,數字)的值回圈。
let clicks = []
let latitude = parseFloat("10.33")
clicks.push(latitude)
console.log(typeof(latitude))
for (var object of clicks) {
console.log(typeof(object))
}
console.log(typeof(clicks[0]))
uj5u.com熱心網友回復:
由于 'for(... in ...)' 您正在瀏覽一個陣列,'object' 實際上生成該元素的索引值,而不是當前陣列的元素。當您使用 'clicks.forEach(...)' 結構導航時,您可以訪問陣列的元素。因此,您會得到一個“字串”,因此您對“typeof(...)”執行的操作不在相同的元素上。其中一個給出陣列索引,另一個給出陣列的元素。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/395623.html
標籤:javascript 数组
