javascript - JavaScript 中括号的使用
问题描述
我在 Kyle Simpson 的 @kyle-simpson 书Functional-Light JavaScript中遇到了以下 JavaScript,并对它的部分语法感到好奇:
const double = v => v * 2;
const reducer = (list, v) => (list.push(double(v)), list);
var doubled = [1, 2, 3, 4, 5].reduce(reducer, []);
console.log(doubled);
//[2, 4, 6, 8, 10]
var reduced = reducer([3], 2);
console.log(reduced);
//[3, 6]
具体来说,我不确定 reducer 函数返回值周围的外括号的含义和用法:
(list.push(double(v)), list)
将对象文字包装在括号中是一种从箭头函数隐式返回它的方法,但这似乎有所不同。
还:
var val = (3, 2);
console.log(val);
//2
这似乎表明括号将返回其列表中的最后一个值,这将匹配 reducer 函数的签名,但我不知道这个构造被称为什么。
提前感谢您的回复。
解决方案
推荐阅读
- javascript - 不允许使用 Django 方法 (POST) 405
- sql - SAP HANA SQL 匹配字符串模式和组合
- bash - 从文件中读取一列,将每个元素增加一个常量,然后在 bash 中重写回文件
- matlab - 使用 Slurm 调度程序在集群的多个节点上运行单个 Matlab parpool 作业
- javascript - 如何使用javascript(仅深色)获得随机颜色?
- python - 数独拼图与包含平方数的框
- vue.js - 无法使用 vue-utils 向我的测试脚本添加观察者
- html - 如何将引导卡分成两列?
- android - 如何在 Xamarin 中访问 android 上的 oledb
- javascript - 从多个组件获取受控输入时,如何最大限度地提高 React 的性能?