Blame view

node_modules/object-assign/readme.md 1.47 KB
aaac7fed   liuqimichale   add
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
  # object-assign [![Build Status](https://travis-ci.org/sindresorhus/object-assign.svg?branch=master)](https://travis-ci.org/sindresorhus/object-assign)
  
  > ES2015 [`Object.assign()`](http://www.2ality.com/2014/01/object-assign.html) [ponyfill](https://ponyfill.com)
  
  
  ## Use the built-in
  
  Node.js 4 and up, as well as every evergreen browser (Chrome, Edge, Firefox, Opera, Safari),
  support `Object.assign()` :tada:. If you target only those environments, then by all
  means, use `Object.assign()` instead of this package.
  
  
  ## Install
  
  ```
  $ npm install --save object-assign
  ```
  
  
  ## Usage
  
  ```js
  const objectAssign = require('object-assign');
  
  objectAssign({foo: 0}, {bar: 1});
  //=> {foo: 0, bar: 1}
  
  // multiple sources
  objectAssign({foo: 0}, {bar: 1}, {baz: 2});
  //=> {foo: 0, bar: 1, baz: 2}
  
  // overwrites equal keys
  objectAssign({foo: 0}, {foo: 1}, {foo: 2});
  //=> {foo: 2}
  
  // ignores null and undefined sources
  objectAssign({foo: 0}, null, {bar: 1}, undefined);
  //=> {foo: 0, bar: 1}
  ```
  
  
  ## API
  
  ### objectAssign(target, [source, ...])
  
  Assigns enumerable own properties of `source` objects to the `target` object and returns the `target` object. Additional `source` objects will overwrite previous ones.
  
  
  ## Resources
  
  - [ES2015 spec - Object.assign](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.assign)
  
  
  ## Related
  
  - [deep-assign](https://github.com/sindresorhus/deep-assign) - Recursive `Object.assign()`
  
  
  ## License
  
  MIT © [Sindre Sorhus](https://sindresorhus.com)