proposal-object-rest-spread

Rest/Spread Properties for ECMAScript

  • Owner: tc39/proposal-object-rest-spread
  • Platform:
  • License::
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

Object Rest/Spread Properties for ECMAScript

ECMAScript 6 introduces rest elements for array destructuring assignment and spread elements for array literals.

This proposal introduces analogous rest properties for object destructuring assignment and spread properties for object literals.

Specification

Specification

Rest Properties

Rest properties collect the remaining own enumerable property keys that are not already picked off by the destructuring pattern. Those keys and their values are copied onto a new object.

let { x, y, ...z } = { x: 1, y: 2, a: 3, b: 4 };
x; // 1
y; // 2
z; // { a: 3, b: 4 }

Spread Properties

Spread properties in object initializers copies own enumerable properties from a provided object onto the newly created object.

let n = { x, y, ...z };
n; // { x: 1, y: 2, a: 3, b: 4 }

Transpilers

Babel

JSTransform

TypeScript

Status of this Proposal

It is a Stage 4 proposal for ECMAScript.

Known Issues

This proposal only iterates over own properties. See why this matters.

Main metrics

Overview
Name With Ownertc39/proposal-object-rest-spread
Primary LanguageHTML
Program languageHTML (Language Count: 2)
Platform
License:
所有者活动
Created At2014-07-30 06:05:03
Pushed At2022-01-24 19:18:52
Last Commit At
Release Count0
用户参与
Stargazers Count1.5k
Watchers Count68
Fork Count85
Commits Count108
Has Issues Enabled
Issues Count46
Issue Open Count14
Pull Requests Count17
Pull Requests Open Count0
Pull Requests Close Count7
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private