Created
September 11, 2019 01:28
-
-
Save meidikawardana/b6e3d49a8255fa151d8d477b08aba053 to your computer and use it in GitHub Desktop.
next gen js - spread & rest operator
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html> | |
<head> | |
<meta charset="utf-8"> | |
<meta name="viewport" content="width=device-width"> | |
<title>JS Bin</title> | |
</head> | |
<body> | |
<script id="jsbin-javascript"> | |
//spread operator in array | |
'use strict'; | |
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; | |
var numbers = [1, 2, 3]; | |
var newNumbers = [].concat(numbers, [4]); | |
console.log(newNumbers); | |
//spread operator in object | |
var person = { | |
name: 'Max' | |
}; | |
var newPerson = _extends({}, person, { | |
age: 28 | |
}); | |
console.log(newPerson); | |
//rest operator in function | |
var filter = function filter() { | |
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { | |
args[_key] = arguments[_key]; | |
} | |
return args.filter(function (el) { | |
return el === 1; | |
}); | |
}; | |
console.log(filter(1, 2, 3)); | |
</script> | |
<script id="jsbin-source-javascript" type="text/javascript">//spread operator in array | |
const numbers = [1,2,3]; | |
const newNumbers = [...numbers, 4]; | |
console.log(newNumbers); | |
//spread operator in object | |
const person = { | |
name: 'Max' | |
}; | |
const newPerson = { | |
...person, | |
age: 28 | |
} | |
console.log(newPerson); | |
//rest operator in function | |
const filter = (...args) => { | |
return args.filter(el => el === 1); | |
} | |
console.log(filter(1,2,3));</script></body> | |
</html> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//spread operator in array | |
'use strict'; | |
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; | |
var numbers = [1, 2, 3]; | |
var newNumbers = [].concat(numbers, [4]); | |
console.log(newNumbers); | |
//spread operator in object | |
var person = { | |
name: 'Max' | |
}; | |
var newPerson = _extends({}, person, { | |
age: 28 | |
}); | |
console.log(newPerson); | |
//rest operator in function | |
var filter = function filter() { | |
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { | |
args[_key] = arguments[_key]; | |
} | |
return args.filter(function (el) { | |
return el === 1; | |
}); | |
}; | |
console.log(filter(1, 2, 3)); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment