Koans를 브라우저에서 실행하는 것으로 과제를 시작할 수 있습니다.
브라우저에서 KoansRunner.html을 열어보면 확인할 수 있는 통과하지 못한 테스트가 여럿 들어있습니다. 테스트 파일들은 /koans에 있습니다. koans/01_Introduction.js 부터 문제를 풀어주시면 되겠습니다.
Koans는 고민 없이 풀면, 큰 어려움 없이 전부 다 풀 수 있습니다. 답이 미리 제시되어 있기 때문입니다. Koans는 불교에서 유래된 단어로, 결론을 내리기 전에 이게 왜 맞는지 깊게 고민한다는 의미를 가지고 있다고 합니다. 정답만 쉽게 작성하셨다면, 그게 왜 정답인지 고민해보는 시간이 필요하겠죠? Koans 문제 사이사이에는 따로 설명드리지 않은 개념에 대해서 문제가 나오는 경우가 있습니다. 혹시 아래의 주제에 대해서 궁금하다면 찾아보고 혼자 공부해보셔도 좋습니다 :)
const poppedValue = arr.pop();
// 여기에는 지워진 value가 할당 된다.
'mastermind' in megalomaniac
// megalomaniac라는 객체에 mastermind 라는 키 값이 존재하는지 true/false로 알 수 있다.
// 단, rest parameter는 다른 매개 변수와 함께 사용할 경우 반드시 마지막에 사용해야 한다.
function getAllParams(required1, required2, ...args) {
return [required1, required2, args];
}
Object.keys(Obj1);
// Obj1의 키 값들을 배열로 뽑아 낼 수 있다.
Object.values(Obj1);
// Obj1의 value값들을 배열로 뽑아 낼 수 있다.
// 솔직히, 이건 작동하게 하면 안 되는 거 아닌가?? 싶지만 일단 되니 알아두자...
it('객체의 단축(shorthand) 문법을 익힙니다', () => {
const name = '김코딩'
const age = 28
const person = {
name,
age,
level: 'Junior',
}
const person2 = {
name,
age,
level: 'Junior2',
}
expect(person).to.eql( { name: '김코딩', age: 28, level: 'Junior' } );
expect(person2).to.eql( { name: '김코딩', age: 28, level: 'Junior2' } );