Skip to content

Instantly share code, notes, and snippets.

@chaerynny
chaerynny / for...of.js
Created August 1, 2020 15:56
for...of
Object.prototype.obj = function () {};
Array.prototype.arr = function () {};
var iterable = [3, 5, 7];
iterable.f = "hello";
for (var key in iterable) {
console.log(key); // 0, 1, 2, "f", "arr", "obj"
}
@chaerynny
chaerynny / for...in.js
Created August 1, 2020 15:50
for...in
const obj = { a: 1, b: 2, c: 3 };
Object.prototype.obj2 = function() {
return 0;
}
for (const key in obj) {
console.log(key, obj[key]);
} // a 1 b 2 c 3 obj function()...
@chaerynny
chaerynny / forEach.js
Created August 1, 2020 15:44
forEach
const arr = [1, 2, 3, 4, 5];
arr.forEach(item => console.log(item); ); // 1, 2, 3, 4, 5
@chaerynny
chaerynny / for...of.js
Last active August 1, 2020 14:48
for...of
// ES5
var array = ["apple", "banana", "pineapple"];
for (var i = 0; i < array.length; i++) {
console.log(array[i]);
}
var string = 'hello world';
for (var i = 0; i < string.length; i++) {
console.log(string[i]);
}
@chaerynny
chaerynny / arrowFunction.js
Created August 1, 2020 14:40
Arrow Function
// ES5
var double = function(num) {
return num * 2;
}
// ES6
let double = num => num * 2;
// 화살표 함수에서의 this
console.log(this === window); // true
@chaerynny
chaerynny / templateLiterals.js
Created August 1, 2020 14:30
Template Literals
// ES5
let iAm = function(name, age, country) {
return name + ',' + age + ',' + country;
}
// ES6
let iAm = function(name, age, country = 'South Korea') {
return `${name}, ${age}, ${country}`;
}
@chaerynny
chaerynny / defaultParameters.js
Created August 1, 2020 14:24
Default Parameters.
// ES5
let iAm = function(name, age, country) {
country = country === undefined? 'South Korea' : country;
}
console.log(iAm('ryn', 20)); // 'ryn', 20, 'South Korea'
console.log(iAm('ryn', 20, 'Canada')); // 'ryn', 20, 'Canada'
// ES6
let iAm = function(name, age, country = 'South Korea') {
country = country === undefined? 'South Korea' : country;
@chaerynny
chaerynny / spreadOperator.js
Last active August 1, 2020 14:13
Spread Operator
let array = ["apple", "banana", "pineapple"];
let newArr = [...array];
console.log( newaArr === array ); // false, 원본 배열을 바꾸지 않음
// Spread Operator 활용
function sum(a, b, c){
return a + b + c;
}
let array = [100, 200, 300];
@chaerynny
chaerynny / destructuring.js
Created August 1, 2020 14:06
destructuring
// Array
// ES5
var array = [1, 2, 3];
var apple = array[0]; // 1
var banana = array[1]; // 2
// ES6
var array = [1, 2, 3];
var [apple, banana] = array;
@chaerynny
chaerynny / linkedList.js
Created July 28, 2020 13:58
DS_linkedList
class Node {
constructor(value) {
this.value = value; // 데이터 값
this.next = null; // 다음 노드
}
}
class LinkedList {
constructor() {
this.head = null; // 시작노드