当前位置: 首页 > news >正文

[9, 8, 7, 6][1,2] = ?

当我们运行这段代码时,控制台中会记录什么值?

const arr = [9, 8, 7, 6];
const res = arr[1, 2];
console.log(res);

当我们运行这段代码时,res 的值将是 7。并且控制台中会打印出 7

让我们来详细分析一下。

第一步:[1, 2] 会被转换成 [2]

为什么?

后续的元素 [1, 2] 不能作为数组进行操作;因此,它作为数组下标进行操作。在下标操作的上下文中,内容不构成操作数的分隔列表,而是一个单一的表达式。

在javascript中,我们可以用逗号(,)分隔多个表达式。最后一个表达式的结果会被返回。

// 示例 1
const z = (1, 2, 3, 4, 5); 
console.log(z); // 输出 5// 示例 2  
function a() {return 'a'; 
}function b() {return 'b';  
}function c() {return 'c';
}const d = (a(), b(), c()); 
console.log(d); // 输出 'c'

第二步:在上述代码变成 [9, 8, 7, 6][2] 后很简单,我们正在尝试访问索引 2 的元素,它是 7。

这里是更多的变体:

[9, 8, 7, 6][1, 2, 3] // 输出 6 [9, 8, 7, 6][8, 2, 3, 1] // 输出 8

所以在本例中,[1,2] 被解释为表达式 2,最终我们获取了数组中索引为 2 的元素,也就是 7。

http://www.lryc.cn/news/283521.html

相关文章:

  • docker部署Jira+配置MySQL8数据库
  • YOLOv5全网独家首发:DCNv4更快收敛、更高速度、更高性能,效果秒杀DCNv3、DCNv2等 ,助力检测实现暴力涨点
  • HTML中常用标签--详解
  • Vue实现字符串首字母大写、翻转字符串、获取用户选定的文本
  • 基于springboot+vue的旅游网站系统(前后端分离)
  • GB/T28181-2022之图像抓拍规范解读和设计实现
  • 阿赵UE学习笔记——10、Blender材质和绘制网格体
  • 数据结构--串
  • RabbitMQ交换机(3)-Topic
  • 前端密钥怎么存储,以及临时存储一些数据,如何存储才最安全?
  • 第16章_网络编程拓展练习(TCP编程,UDP编程)
  • 深入Docker5:安装nginx部署完整项目
  • HBASE学习四:常用命令汇总梳理(包括数据库、zk、hdfs相关操作与配置)
  • Android平台RTSP|RTMP播放端实时快照保存JPG还是PNG?
  • 【人工智能】之深入了解嵌入模型中的 Token:NLP 中的语义之旅(1)
  • UML-实现图(组件图和部署图)
  • 苹果Find My可查找添加32件物品,伦茨科技ST17H6x芯片加速产品赋能
  • postman后端测试时invalid token报错+token失效报错解决方案
  • 使用 mybatis-plus 的mybaits的一对多时, total和record的不匹配问题
  • SpringCloud之Nacos
  • 小封装高稳定性振荡器 Sg2520egn / sg2520vgn, sg2520ehn / sg2520vhn
  • 使用 Apache POI 更新/覆盖 特定的单元格
  • Spring Boot整合MyBatis-Plus
  • springboot项目之AOP角色权限的判断
  • Twincat PLC 跳出循环
  • 【Leetcode】277.搜寻名人
  • 小白数学建模 Mathtype 7.7傻瓜式下载安装嵌入Word/WPS以及深度使用教程
  • Linux之which和find
  • MySQL 常规操作指南
  • Rocketmq rust版本-开篇