js-tutorial-5

dev-riverkim·2023년 7월 10일
0
// 9_if_and_switch.js
/**
 * If and Switch
 */
let number = 5;

if (number % 2 === 0) {
    console.log('number 변수는 짝수입니다.');
} else {
    console.log('number 변수는 홀수입니다.');
}

if (number % 2 === 0) {
    console.log('2의 배수입니다.');
} else if (number % 3 === 0) {
    console.log('3의 배수입니다.');
} else if (number % 4 === 0) {
    console.log('4의 배수입니다.');
} else if (number % 5 === 0) {
    console.log('5의 배수입니다.');
} else {
    console.log('2, 3, 4, 5의 배수가 아닙니다.');
}

const englishDay = 'saturday';

let koreanDay;

switch(englishDay){
    case 'monday':
        koreanDay = '월요일';
        break;
    case 'tuesday':
        koreanDay = '화요일';
        break;
    case 'wednesday':
        koreanDay = '수요일';
        break;
    case 'thursday':
        koreanDay = '목요일';
        break;
    case 'friday':
        koreanDay = '금요일';
        break;
    default:
        koreanDay = '주말';
        break;
}

console.log(koreanDay);





// 10_loops.js


/**
 * Loops
 * 
 * 1) for
 * 2) while
 */
for (let i = 0; i < 10; i++) {
    console.log(i);
}

console.log('------------');

for (let i = 10; i > 0; i--) {
    console.log(i);
}

console.log('------------');

for (let i = 0; i < 3; i++) {
    for (let j = 3; j > 0; j--) {
        console.log(i, j);
    }
}

// *을 이용해서 6x6의 정사각형를 출력해라
let square = '';
let side = 6;

for (let i = 0; i < side; i++) {
    for (let j = 0; j < side; j++) {
        square += '*';
    }
    square += '\n';
}

console.log(square);

/**
 * for...in
 * loop를 할 때마다 키값을 받을 수 있음
 * object에서는 키 값
 * array 에서는 인덱스 값
 */
const yuJin = {
    name: '안유진',
    year: 2003,
    group: '아이브',
}

console.log('------------');

for (let key in yuJin) {
    console.log(key); // name,year,group
}

const iveMembersArray = ['안유진', '가을', '레이', '장원영', '리즈', '이서'];

console.log('------------');

for (let key in iveMembersArray) {
    console.log(key); // 0, 1, 2, 3, 4, 5 (index 값)
    console.log(`${key}:${iveMembersArray[key]}`); //0:안유진, 1:가을 2:레이, 3:장원영 ,4:리즈, 5:이서
}

/**
 * for...of
 * array
 * 값이 출력
 */
for (let value of iveMembersArray) {
    console.log(value); // 안유진, 가을, 레이, 장원영, 리즈, 이서
}

/**
 * While
 */
let number = 0;

while (number < 10) {
    number++;
}

console.log(number); // 10

/**
 * do...while
 * 실무에서 잘 사용하지 않음
 */
number = 0;

do {
    number++;
} while (number < 10);

console.log(number);

/**
 * break
 */
console.log('--------------');
for (let i = 0; i < 10; i++) {
    if (i === 5) {
        break;
    }
    console.log(i); // 0,1,2,3,4
}

console.log('-------------');
number = 0;

while(number < 10){
    if(number === 5){
        break;
    }

    number ++;
    console.log(number); // 1, 2, 3, 4, 5
}

/**
 * continue
 */
console.log('---------------');
for(let i = 0; i < 10; i++){
    if(i === 5){
        continue;
    }
    console.log(i); // 0, 1, 2, 3, 4, 6, 7, 8, 9
}


console.log('----------------');
number = 0;

while(number < 10){
    number ++;

    if(number === 5){
        continue;
    }

    console.log(number); // 1,2,3,4,6,7,8,9,10
}




// 11_coercion.js


/**
 * 타입 변환
 * Type Conversion
 * 
 * 1) 명시적
 * 2) 암묵적
 */
let age = 32;

// 명시적
let stringAge = age.toString();
console.log(typeof stringAge, stringAge); // string 32

// 암묵적
let test = age + '';
console.log(typeof test, test); // string 32

console.log('98' + '2'); //982
console.log(98 * 2); // 196
console.log('98' - 2); // 96

console.log('------------');
/**
 * 명시적 변환 몇가지 더 배우기
 */
console.log(typeof (99).toString(), (99).toString()); // string 99
console.log(typeof (true).toString(), (true).toString()); // string true
console.log(typeof (Infinity).toString(), (Infinity).toString()); // string Infinity

// 숫자 타입으로 변환
console.log(typeof parseInt('0'), parseInt('0.99')); // number 0
console.log(typeof parseFloat('0.99'), parseFloat('0.99')); // number 0.99
console.log(typeof +'1', +'1'); // number1

console.log('-------------------_');
/**
 * Boolean 타입으로의 변환
 */
console.log(!!'asdkfjhalksdfjasdfx'); // true

console.log(!!''); // false

console.log(!!0); // false
console.log(!!'0'); // true
console.log(!!'false'); // true
console.log(!!false); // false
console.log(!!undefined); // false
console.log(!!null); // false

console.log(!!{}); // true
console.log(!![]); // true

/**
 * 1) 아무 글자도 없는 String
 * 2) 값이 없는 경우
 * 3) 0
 * 
 * 모두 false를 반환한다.
 */
profile
dev-riverkim

0개의 댓글