繁体   English   中英

Javascript数组存储过程

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM