当前位置: 首页 > 面试题库 >

为什么在JavaScript中[5,6,8,7] [1,2] = 8?

暴骏奇
2023-03-14
问题内容

我不能为这个怪癖全神贯注。

[1,2,3,4,5,6][1,2,3]; // 4
[1,2,3,4,5,6][1,2]; // 3

我知道[1,2,3] + [1,2] = "1,2,31,2",但是我找不到正在执行的类型或操作。


问题答案:
[1,2,3,4,5,6][1,2,3];
^ ^
| |
array + — array subscript access operation,
where index is 1,2,3,
which is an expression that evaluates to 3.

第二个[...]不能是数组,因此是数组下标操作。下标操作的内容不是操作数的分隔列表,而是单个表达式。



 类似资料:
  • 本文向大家介绍为什么在JavaScript中[1,2] + [3,4] =“ 1,23,4”?,包括了为什么在JavaScript中[1,2] + [3,4] =“ 1,23,4”?的使用技巧和注意事项,需要的朋友参考一下 JavaScript的+运算符用于添加两个数字或连接两个字符串。但是,使用该方法可以将两个数组连接起来以获得一个新数组。例如, 上面的照片, 让我们看看您的示例。+运算符连接字

  • 问题内容: %在JavaScript中有什么作用? 关于它是什么及其作用的定义将不胜感激。 问题答案: 这是一个 模运算符 。有关JavaScript算术运算符的更多信息,请参见本文档或规范 。 %(模量) 模运算符的用法如下: var1%var2 在前面的语句中,模运算符以第二操作数为模的形式返回第一个操作数,即var1以var2为模,其中var1和var2是变量。模函数是var1除以var2的

  • 问题内容: MDC对操作员的描述如下: 如果两个操作数的类型不同,则JavaScript会转换操作数,然后进行严格比较。如果操作数是数字或布尔值,则在可能的情况下将操作数转换为数字;否则,操作数将转换为数字。否则,如果其中一个操作数是字符串,则另一个操作数将尽可能转换为字符串。 考虑到这一点,我将评估如下: 它们是同一类型吗? 没有 操作数是数字还是布尔值? 是 我们可以将它们都转换为数字吗? 否

  • 问题内容: 为什么评估为无?我预计 问题答案: 这是因为append不返回任何内容(= )。

  • 问题内容: 我正在查看一些代码片段,发现多个元素在节点列表上调用了一个函数,并将forEach应用于空数组。 例如,我有类似的东西: 但我不明白它是如何工作的。谁能解释一下forEach前面的空数组的行为以及其工作原理? 问题答案: 是一个数组。 根本不使用此数组。 之所以放在页面上,是因为使用数组使您可以访问数组原型,例如。 这比打字快 接下来是一个以功能为输入的功能… …并且对于中的每个元素(