[英]Javascript array storing process
為什么在以下數組中
var mensajes = [('juan', 'pedro', 'hola como andas?'), ('jorge', 'matias', 'hola! todo bien?'), ('pedro', 'matias', 'buen dia matias!!')];
當我打印mensajes時
["hola como andas?", "hola! todo bien?", "buen dia matias!!"]
它不應該是一個只有1個值的文本數組嗎? 還是()實際上正在做某事,以及如何僅在()中存儲最后一個值? 我不明白這一點。 提前致謝
既然已經您的數組文本中使用的括號,JS解釋對待包裹代碼作為表達和,
成為一個逗號運算符。 逗號運算符從左到右評估它的操作數,並返回最后一個操作數。 這就是為什么將括號中的操作數的最后一個值設置為數組值的原因。
()使數組僅存儲要存儲的最后一部分。
對你的問題,不。 您的代碼不是包含所有文本的1數組。 如果要打印所有文本,則必須刪除數組中所有的()。
像這樣: var mensajes = ['juan', 'pedro', 'hola como andas?', 'jorge', 'matias', 'hola! todo bien?', 'pedro', 'matias', 'buen dia matias!!'];
var mensajes = ['juan', 'pedro', 'hola como andas?', 'jorge', 'matias', 'hola! todo bien?', 'pedro', 'matias', 'buen dia matias!!'];
如果要打印特定的數組但不全部打印,可以將其更改為:
var mensajes = [['juan', 'pedro', 'hola como andas?'], ['jorge', 'matias', 'hola! todo bien?'], ['pedro', 'matias', 'buen dia matias!!']];
它在數組內保存數組,因此,如果您像console.log(mensajes [0])一樣可以打印一個完整的數組,則僅打印出[juan,pedro,hola coma andas]。 在這種情況下,您無法使用console.log(mensajes)一次打印所有文本。
如果需要,請首先輸入數組名稱,然后在括號中添加所需數組的索引值。
希望這可以幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.