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