首頁  >  文章  >  web前端  >  為什麼 JavaScript 在使用運算子新增陣列時會傳回「1,23,4」?

為什麼 JavaScript 在使用運算子新增陣列時會傳回「1,23,4」?

DDD
DDD原創
2024-10-28 17:20:02549瀏覽

Why does JavaScript return

為什麼 JavaScript 將陣列 [1,2] 加到 [3,4] 時回傳「1,23,4」?

嘗試新增下列元素時使用運算子的兩個數組,可能會出現意外結果,如以下程式碼片段所示:

[1,2] + [3,4]

此表達式返回「1,23, 4”而不是“[1,2,3,4] ".

理解問題

JavaScript 中沒有專門為數組定義運算符。相反,在新增陣列時,Javascript 會執行下列步驟:

  1. 將兩個陣列轉換為字串。
  2. 連接產生的字串,產生以逗號分隔的元素清單。

修復行為

要正確添加兩個數組的元素,請使用展開運算符而不是運算符:

[1,2, ...[3,4]] // [1,2,3,4]

運算符行為概述

運算子的行為因涉及的運算元類型而異:

Operand Types Result Type
undefined, null, boolean Number
number Number
string String
object String (except for certain objects like Number and Boolean, where the result may vary depending on the implementation)

請參閱提供的表格或引用的jsfiddle,以了解各種運算元組合的結果類型的完整概述。

以上是為什麼 JavaScript 在使用運算子新增陣列時會傳回「1,23,4」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn