-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
Description
주제
부록 연습 문제 #12
책 내용 (p123~131)
- 비교 연습하기
const dayStart = '07:30';
const dayEnd = '17:45';
// 회의가 근무시간 내에 이루어질 경우 true, 그렇지 않으면 false
function scheduleMeeting(input, duration) {
// hour, min 을 나눠서 min + duration = sum
const [hour, min] = input.split(':').map(Number);
const sum = min + duration;
const [inputHour, inputMin] = sum >= 60 ? [hour + 1, sum - 60] : [hour, sum];
const [startHour, startMin] = dayStart.split(':').map(Number);
const [endHour, endMin] = dayEnd.split(':').map(Number);
return (
((hour === startHour && min >= startMin) || hour > startHour) &&
((inputHour === endHour && inputMin <= endMin) || inputHour < endHour)
);
}- 클로저 연습하기
function range(start, end) {
if (end === undefined) {
return (end) => range(start, end);
}
return Array.from({ length: end - start + 1 }, (_, i) => i + start);
}- 프로토타입 연습하기
var slotMachine = {
reels: [Object.create(reel), Object.create(reel), Object.create(reel)],
spin() {
this.reels.forEach(function spinReel(reel) {
reel.spin();
});
},
// 나머지 연산자를 사용하면 원형으로 만들 수 있음?
// 위임을 해서 position을 관리하기
display() {
// 배열화 해서 join('|')해야겠음
// 슬롯 머신의 릴은 결과 해당하는 기호 하나 position과 position -1 , position +1을 함께 표시
// const result = [reel.position - 1, reel.position, reel.position + 1];
// return result.join('|'); 죄송한데 모르겠다요'ㅅ'리얼
},
};Reactions are currently unavailable