JavaScript 中使用
.size()
還是.length()
?
讓我們仔細看看…….size()
實際上只是調用了 .length
(如下所示的 jQuery 源代碼清楚地表明了這一點),因此我們節省了一個函數調用:
//https://code.jquery.com/jquery-latest.js // 匹配元素集中包含的元素数量 size: function() { return this.length; },
經測試證明,.length()
的速度比.size()
更快(jsperf 測試結果https://www.php.cn/link/5208093bcaf65dfea07bdab31d600223 jQuery 中為什麼還有.size()
函數呢?我的初步猜測是,他們將其保持抽象,以便將來如果需要不同的.length
計算方法,它可以提供向後兼容的API。您可能見過常見的用法:
// 检查 DOM 元素是否存在 if ($('#id').length > 0) { ... }
簡而言之,除非有人給我充分的理由不用 .length
,否則我會一直使用它。
在 JavaScript 中,size
和 length
都用於確定對像中的元素數量。但是,它們用於不同類型的對象。 length
屬性用於數組對象,而 size
屬性用於 Map
和 Set
對象。數組的 length
屬性返回數組中元素的數量。另一方面,Map
或 Set
對象的 size
屬性分別返回對像中鍵值對或元素的數量。
與數組不同,JavaScript 中的對像沒有內置的 size
或 length
屬性。但是,您可以使用 Object.keys()
方法確定對象的大小(即它擁有的屬性數量)。此方法返回對象自身屬性名稱的數組。然後,您可以獲取此數組的長度以找出對象的大小。
length
屬性與字符串一起使用嗎? 是的,您可以在 JavaScript 中將 length
屬性與字符串一起使用。字符串的 length
屬性返回字符串中字符的數量,包括空格和特殊字符。
在 JavaScript 中,數組的 length
屬性反映數組中元素的數量。空數組不包含任何元素,因此其長度為 0。
是的,您可以在 JavaScript 中更改數組的長度。如果您增加長度,則值為 undefined
的新元素將添加到數組的末尾。如果您減小長度,則元素將從數組的末尾刪除。
如果您嘗試使用大於或等於數組長度的索引訪問數組元素,JavaScript 將返回 undefined
。這是因為索引超出了數組的範圍。
size
屬性與數組一起使用嗎? 不可以,您不能在 JavaScript 中將 size
屬性與數組一起使用。 size
屬性用於 Map
和 Set
對象,而不是數組。要確定數組中元素的數量,您應該使用 length
屬性。
Map
或 Set
對象的大小? 您可以使用 size
屬性確定 JavaScript 中 Map
或 Set
對象的大小。此屬性返回 Map
對像中鍵值對的數量或 Set
對像中元素的數量。
length
屬性與 Map
或 Set
對像一起使用嗎? 不可以,您不能在 JavaScript 中將 length
屬性與 Map
或 Set
對像一起使用。 length
屬性用於數組和字符串,而不是 Map
或 Set
對象。要確定 Map
對像中鍵值對的數量或 Set
對像中元素的數量,您應該使用 size
屬性。
size
屬性和 length
屬性有什麼區別? 就性能而言,JavaScript 中 size
屬性和 length
屬性之間沒有顯著差異。這兩個屬性都提供了一種快速有效的方法來確定對像中元素的數量。但是,兩者之間的選擇取決於您正在使用的對像類型。 length
屬性用於數組和字符串,而 size
屬性用於 Map
和 Set
對象。
以上是我在JavaScript中使用.size()還是.gength?的詳細內容。更多資訊請關注PHP中文網其他相關文章!