Syntax 这个语法是什么意思(…)

Syntax 这个语法是什么意思(…),syntax,record,reason,reason-react,Syntax,Record,Reason,Reason React,我要把我的手放在理智上。 在以下代码中: let component = ReasonReact.statelessComponent("Component3"); let make = (~name, _children) => { ...component, render: self => <input type_="checkbox" />, }; 这种表示称为扩展语法。这是在ES6中引入的 MDN文档中的定义和示例。链接在底部 扩展语法允许在预期零个或多

我要把我的手放在理智上。 在以下代码中:

let component = ReasonReact.statelessComponent("Component3");
let make = (~name, _children) => {
  ...component,
  render: self => <input type_="checkbox" />,
};

这种表示称为扩展语法。这是在ES6中引入的

MDN文档中的定义和示例。链接在底部

扩展语法允许在预期零个或多个参数(用于函数调用)或元素(用于数组文字)的位置展开iterable,例如数组表达式或字符串,或者在预期零个或多个键值对(用于对象文字)的位置展开object表达式

function sum(x, y, z) {
  return x + y + z;
}

const numbers = [1, 2, 3];

console.log(sum(...numbers));
// expected output: 6

console.log(sum.apply(null, numbers));
// expected output: 6

有关更多详细信息,请访问:

Edit:我已经看到“组件”在默认情况下实现了“渲染”方法。这种语法是否意味着“获取组件对象中的所有内容,并在“render”函数上添加一些额外的功能?这不是重复,因为它不是ES6或JSX,而是一种完全不同的称为Reason的语言(它最初被正确地标记为Reason)。spread语法在Reason中的用途与ES6类似(这就是灵感的来源)但并不完全相同,首先也是最重要的,因为它运行在强大的、名义上类型化的记录上,而不是动态类型化的对象上。下面是它的文档:
function sum(x, y, z) {
  return x + y + z;
}

const numbers = [1, 2, 3];

console.log(sum(...numbers));
// expected output: 6

console.log(sum.apply(null, numbers));
// expected output: 6