const aaa = 10; console.log(typeof aaa);
연습문제
let num2 = 42; let name2 = "John"; let isTrue = true; let person = { name: "Alice", age: 30 }; let fruits = ["apple", "banana", "orange"]; console.log(typeof num2); console.log(typeof name2); console.log(typeof isTrue); console.log(typeof person); console.log(typeof fruits); let length = 16; // 숫자형 let lastName = "Brown"; // 문자형 let score = [10, 20]; // 배열 let x = { firstName: "Nick", lastName: "Doe", }; // 객체
곱셉 : *
덧셈 : +
뺄셈 : -
나눗셈 : /
나머지 : %const bbb = a * b; const add = a + b; const minus = a - b; const a = 10; const b = 5;
++
변수에 할당된 숫자 값을 1 증가할 때
++num 전치연산자 또는 전위연산자 전치 : ~하기전에
num++ 후치연산자 또는 후위연산자 후치 : ~한후에let num = 10; num++; const increNum = num++;
--
변수에 할당된 숫자 값을 1 감소할 때let num3 = 10; num3--; --num3; num3--;
연습문제
const y = 7; console.log(y); console.log(y++); console.log(y); console.log(y--); console.log(++y); console.log(--y);
const abc = 10; num += 10; // num = num + 10
연습문제
const xxx = 20; xxx += 10; console.log(xxx); // 30 xxx -= 5; console.log(xxx); // 25 xxx %= 2; console.log(xxx); // 12.5 xxx *= 3; console.log(xxx); // 37.5
const aaa = 10; const bbb = 10; const strNum = "10"; console.log(aaa == bbb); console.log(aaa == strNum); 10 == "10" 실무에서는 일치, 불일치 사용
연습문제
const age1 = 25; const age2 = 30; console.log(age1 > age2); // false console.log(age1 === age2); // false console.log(age1 > age2 ? "Older" : "Younger or Same");
0, undefined, null -> 자동으로 거짓으로 판별
0보다큰수, 문자열, 배열, 함수 값 -> 참 판별let myMoney = 3000; let price = 5000; const result = myMoney > price ? "돈이 부족합니다." : "물건을 구매하겠습니까?";
연습문제
- 숫자비교
- 변수
num
에 임의의 숫자를 할당하세요.num
이 0보다 큰지, 0인지, 0보다 작은지 삼항 연산자를 사용하여 각각 "Positive", "Zero", "Negative"를 출력하세요.const num = 7; const results = num > 0 ? "Positive" : num === 0 ? "Zero" : "Negative "; const results = num > 0 ? "Positive" : (num === 0 ? "Zero" : "Negative) "; () 넣어서 가독성 좋게
최댓값 찾기
세 변수
a
,b
,c
에 임의의 숫자를 할당하세요.
삼항 연산자를 사용하여a
,b
,c
중 가장 큰 숫자를 찾고, 그 결과를 출력하세요.const a = 1; const b = 2; const c = 3; const qqq = a > b ? a > c ?a : c) : b > c ? b : c;
연습문제
const a = true; const b = false;
console.log(a && b); // false console.log(a || b); // true console.log(!a); // false
const x = 10; const y = 20; const z = 30; // 크고(연결) => && 크거나, 이거거나 => || // or는 둘중하나만 true여도 true 반납 console.log(x > 10 && y < 5); // false console.log(x > 10 || z > 3); // true console.log(y !== 0);
const isLoggedIn = true; const isAdmin = false; console.log(isLoddedIn ? "Welcome" : "Please log in"); console.log(isAdmin ? "Admin access granted" : "Admin access denied"); console.log( isLoggedIn && isAdmin ? "Full access granted" : "Restricted access" );
서술형 문제
변수
value1
과value2
에 각각 임의의 값을 할당하세요. (예: 숫자, 문자열,null
,undefined
)
두 변수 중 하나라도 값이 존재하는지 확인하는 조건을 작성하고, 결과를 출력하세요.
두 변수 모두 값이 존재하지 않는지 확인하는 조건을 작성하고, 결과를 출력하세요.const value1 = undefined; const value2 = null; 0, undefined, null, "", NAN 이 값이 아니면 다 참으로 나타남 문제에서 원하는 답은 0, undefined, null, "", NAN -> true false 변환이 되는 걸 원함 true, false 반대로 출력되는 걸 아니다. !! 부정 2번이면 javscript 최종적으로 true, false 로 도출할려한다 console.log(!!value1 || !!value2); // 1개라도 값이 존재하면 true, 아니면 false console.log(!value1 && !value2); // 두 변수 모두 값이 없으면 true, 아니면 false
변수
num
에 임의의 숫자를 할당하세요.
num
이 0 이상 100 이하인지 확인하는 조건을 작성하고, 결과를 출력하세요.
num
이 0 미만이거나 100 초과인지 확인하는 조건을 작성하고, 결과를 출력하세요.const num = 50; console.log(num >= 0 && num <= 100); // true console.log(num < 0 || num > 100); // false
const area = "경기도"; const area = "제주도"; let baesongbi = 0; switch (area) { case "서울": baesongbi = 3000; break; case "인천": baesongbi = 3000; break; case "남양주": baesongbi = 3000; break; case "경기도": baesongbi = 3500; break; default: baesongbi = 100000; break; } console.log(baesongbi); //3500 console.log(baesongbi); // 제주도일때 10000
if (area === "서울") baesongbi = 3000; else if (area === "인천") baesongbi = 3000; else if (area === "남양주") baesongbi = 3000; else if (area === "경기도") baesongbi = 3000; else baesongbi = 10000; if ( area === "서울" || area === "인천" || area === "남양주" || area === "경기도" ) baesongbi = 3000; else baesongbi = 100000;
연습문제
학점 계산기 const score = 88; if (score >= 90) console.log("A"); else if (score >= 80) console.log("B"); else if (score >= 70) console.log("C"); else if (score >= 60) console.log("D"); else console.log("F"); 짝수와 홀수 판별 const num = 8; if (num % 2 === 0) { ("Even"); } else { ("Odd"); }
삼항연산자
const isLoggedIn = true; const isAdmin = false; const checkId = isLoggedIn ? "true" : "false";
숫자 크기 비교 const a = 10; const b = 20; if (a > b) console.log("a is greater"); else if (a < b) console.log("b is greater"); else console.log("equal");
월별 계절 판별 const month = 5; if (month === 12 || month === 1 || month === 2) console.log("Winter"); else if (month === 3 || month === 4 || month === 5) console.log("Spring"); else if (month === 6 || month === 7 || month === 8) console.log("Winter"); else console.log("Fall");
무한루프(inifinnte loop, 무한 반복문) let num = 0; while (num < 10) { console.log(num); // -> 무한 반복문을 만드는 실수 num++; }
do { console.log(num); num++; } while (num < 10);
for (let i = 0; i < 10; i++) { console.log(i); }
for in 문 let arr = ["banana", "apple", "orange"]; let obj = { name: "철수", age: 20 };
for (let index in arr) { console.log(index); }
for (let key in obj) { console.log(obj[key]); }
연습문제
1부터 9까지 출력하기
let num = 1; while (num < 10) { console.log(num); num++; }
do { console.log(num); num++; } while (num < 10);
배열에 음수값이 섞여있습니다. 음수는 제외하고 양수들만 골라내어 합을 구하세요 let numArr = [10, -10, 20, -30, 40]; let sum = 0; for (let value of numArr) { if (value > 0) { sum += value; } }
배열 길이를 구해서 반복문 사용 for (let i = 0; i < numArr.length; i++) { if (numArr[i] > 0) { sum += numArr[i]; } } const str = "Hello World"; console.log(str.length); console.log(numArr.length); // 5 배열의 갯수를 알수있다.
홀짝 구분하기 0부터 15까지 출력하면서 각각의 수가 짝수인지 홀수인지 구분하여 출력하도록 코드를 작성해주세요. 출력 예시 ) 0 짝수 1 홀수 2 짝수 3 홀수 4 짝수 ... 중략 .. 15 홀수 for (let i = 0; i < 15; i++) { console.log(i, i % 2 === 0 ? "짝수" : "홀수"); }
암스트롱 수 구하기 100부터 999까지 암스트롱 수를 구하세요 &암스트롱 수란? 암스트롱의 수는 세 자리의 정수 중에서 각 자리의 수를 세 제곱한 수의 합과 자신이 같은 수를 말합니다. 예를 들어 153 = 1 + 125 + 27 입니다. 이와 같은 수를 암스트롱의 수라고 말합니다. //153 // 100 -> 1 0 0 // 일의 자리 : 456 % 10 = 6 // 십의 자리 : (456 - 6) / 10 % 10 = 5 // 백의 자리 : 456 - 6 - (5 % 10) = 400 / 100 = 4; for (let i = 100; i < 999; i++) { const num1 = i % 10; // 일의 자리 const num2 = ((i - num1) / 10) % 10; // 십의 자리 const num3 = (i - num1 - num2 * 10) / 100; // 백의 자리 if (i === num1 * num2 * num1 + num2 * num2 * num2 + num3 * num3 * num3) console.log(i); } // 다중 for 문, 다중 반복문 for (i = 1; i < 10; i++) { // 백의자리 for (j = 0; j < 10; j++) { // 십의자리 for (k = 0; k < 10; k++) { // 일의자리 let result = i * 100 + j * 10 + k; let sum = i ** 3 + j ** 3 + k ** 3; if (result === sum) console.log(result); } } } // 거듭제곱연산자 // ** // 2 ** 3 = 8 // 3 ** 2 = 9
function gugudan3() { } gugudan3();
함수 표현식
익명 함수(unnamed function )const gugudan4 = function () { }; gugudan4();
함수의 매개변수
function add(a, b) { console.log(a + b); } add(10, 20);
화살표 함수
const func = () => {};
배열형태로 function add(...args) { console.log(args); // 유사 배열 객체 es6나오기전까지 많이 사용한 방식 console.log(arguments); let sum = 0; for (let i = 0; i < arguments.length; i++) { sum += arguments[i]; } console.log(sum); } add(10, 20); add(10, 20, 30);
매개변수 function add(a, b, ...args) { console.log(a, b, args); } add(10, 20, 30, 40, 50); // return은 함수 내부 안에서만 사용 function add(a, b) { const sum = a + b; return sum; } function printNumber(number) { console.log(`${number}가 출력되었습니다.`); } const sum = add(10, 20); // 10, 20이 sum안으로 printNumber(sum);
연습문제
매개변수를 전달받아서 매개변수의 총 합을 반환하는 덧셈 함수를 만들어주세요. 매개변수의 갯수 제한은 없습니다. 1번 const add = (...args) => { let sum = 0; for (let i = 0; i < args.length; i++) { sum += args[i]; } return sum; }; console.log(add(10, 20, 30, 40));
사칙연산을 수행하는 로직을 담은 함수를 구현해주세요. 구현 방법은 자율입니다. function calcuate(a, b, operator) { switch (operator) { case "+": return a + b; case "-": return a - b; case "*": return a * b; case "/": return a / b; } } console.log(calcuate(10, 2, "/"));
짝수와 홀수 판별하기 숫자를 매개변수로 받아서 짝수면 true, 홀수면 false를 반환하는 함수 isEven을 작성하세요. 함수를 사용하여 7이 짝수인지 홀수인지 판별하고 결과를 출력하세요. const isEven = (num) => (num % 2 === 0 ? true : false); console.log(isEven(7));
팩토리얼 계산하기 양의 정수를 매개변수로 받아서 그 수의 팩토리얼을 반환하는 함수 `factorial`을 작성하세요. 함수를 사용하여 5의 팩토리얼을 계산하고 결과를 출력하세요. function factorial(n) { let sum = 1; for (i = n; i > 0; i--) { sum *= i; } return sum; } console.log(factorial(5));
재귀함수 case 2 재귀함수 한수안에서 자기 자신을 다시 호출하는 함수 const factorial = (n) => { if (n === 0 || n === 1) { return 1; } else { return n * factorial(n - 1); } }; console.log(factorial(5));