본 자료는 박규하 코치님과 Elice 플랫폼의 자료를 사용하여 정리하였습니다.
let function_name = (parameter1, paremeter2, ...) => expression;
let user = {
name: "Alice",
sayHi: function() {
console.log("Hi, I'm " + this.name);
}
}
user.sayHi(); // Hi, I'm Alice
let user = {
name: "Alice",
sayHi: function() {
let self = this; // this를 self에 저장하고 사용
setTimeout(function() {
console.log("Hi, I'm " + self.name);
}, 1000);
}
};
let user = {
name: "Alice",
sayHi: function() {
setTimeout(function() {
console.log("Hi, I'm " + this.name);
}, bind(this), 1000); // bind(this)를 사용해 바인딩
}
};
let user = {
name: "Alice",
sayHi: function() {
setTimeout(() => {
console.log("Hi, I'm " + this.name);
}, 1000);
}
};
function sum() {
let result = 0;
for (let i = 0; i < arguments.length; i++) {
result += arguments[i];
}
return result;
}
let sum = (...args) => {
let result = 0;
for (let i = 0; i < args.length; i++) {
result += arguments[i];
}
return result;
}
function Person(name){
this.name = name;
}
let alice = new Person("Alice");
console.log(alice.name); // Alice
function add(x, x) { // 불가
return x + x;
}