오늘은 학원에서 시험을 봤어요 같이 풀어보아요 !
1번
{
if( null ){
console.log("true");
} else {
console.log("false");
}
}
if문안에 null 값이 들어가면 false를 반환해요 !
2번
{
let num = 0;
while( num <= 5 ){
num++;
console.log(num);
}
}
123456
3번
{
const str = [100, 200, 300, 400, 500];
str.forEach(function(i){
console.log(i);
});
}
100 200 300 400 500을 반환해요!
str배열을 forEach문이 반복해서 0번배열부터 마지막까지 내용을출력해준다!
4번
{
const str = [100, 200, 300, 400, 500];
for(let i of str){
console.log(i);
}
}
100 200 300 400 500
for of 는 배열안에 값을 반환해요 !
포인키~ 포오브벨~ 이렇게 외웠어요 !
5번
{
const obj = {
a: 100,
b: 200
};
for(let key in obj) {
console.log(key);
console.log(obj[key]);
}
}
a 100
b 200
for in 을 통해서 키값만 가져올수있기때문에 !
obj [a] 이렇게 값을 받아와야해요 !
6번
{
let num = 0;
while( true ){
num++;
if( num == 3 ){
continue;
}
if( num > 6 ){
break;
}
console.log(num);
}
}
while문 조건이 true일때의 while문은 break를 만나야 반복을 정지합니다.
num++ 이 초기값 num이 0에서 증가한 상태로 if문을 만나
1 2 4 5 6 이 실행됩니다
3은 조건문 num==3일때를 만나 continue ( 초기로돌아가며 아래 코드는 실행안함!)
7번
{
for(let i=1; i<=5; i++){
console.log(i);
if(i == 3){
break;
}
}
}
123
for문안에 i 값이 3일때 if문안의 조건 i==3 을 만나 break문 작동
8번
{
let num = 0;
while (num < 20){
num++;
console.log(num);
if(num == 1){
break;
}
}
}
1
while문안에 조건을 따라 n++ 증감한뒤 바로 뒤 if문에서 break만나 1만출력하고 끝!
9번
{
let num = 100;
switch(num){
case 100 :
console.log("100");
break;
case 200 :
console.log("200");
break;
default :
console.log("300");
}
}
100
swich문에서 100이라는 값을 case문에 만나 break문을 통해 빠져나온다!
10번
{
func = () => {
const str = "함수가 실행되었습니다.";
return str;
}
console.log(func());
}
함수가실행되었습니다
리턴값을가진 함수를 실행하였습니다.
11번
{
let direct = 1;
function gallery(num){
if(num){
if(num == 2) direct++;
} else {
if(num == 1) direct--;
}
}
gallery(2);
console.log(direct);
}
매개변수를 받는 함수의 if문 안에 값이 if(2) 이면 true를 반환하는데 direct++은 후처리가 되어 2만출력됨! 햇갈리지말자!
12번
{
let sum = 0;
for(var i=1; i<=100; i++) {
sum += i;
};
console.log(sum);
}
for문의 합연산값 5050이 나온다
13번
{
const obj = {
a: 100,
b: 200,
c: "javascript"
}
const { a:_____, b:_____, c:_____ } = obj;
document.write(name1);
document.write(name2);
document.write(name3);
//100
//200
//javascript
}
name1
name2
name3
14번
{
const obj = {
a: 100,
b: 200,
c: "javascript"
}
const { a, b, c } = _______;
document.write(a);
document.write(b);
document.write(c);
//100
//200
//javascript
}
obj 객체를 넣어주면 됨 !
15번
{
const objA = {
a: 100,
b: 200
}
const objB = {
c: "javascript",
d: "jquery"
}
const spread = {...objA, ...objB}
document.write(spread.a);
document.write(spread.b);
document.write(spread.c);
document.write(spread.d);
}
펼침연산자 ...를 이용하여 spread라는 객체에 a와 b의 합친값을 입력한다.
16번
{
const char = ["J","A","V","A","S","C","R","I","P","T"];
for(let i=9; i>=0; i--){
console.log(char[i]);
}
}
t p i r c s a v a j 로 거꾸로 나타남 why? i = 9 부터 감소하였어서 !
17번
{
let a = 1, b = 2, c = 3, result;
result = ++a + b++ + ++c;
console.log(result);
console.log(a);
console.log(b);
console.log(c);
}
++a => 선처리 2
b++ => 후로 인하여 2
++c => 선처리 4
result = 2+2+4 = 8;
18번
{
let i = 1;
while(i < 5){
console.log(i);
i++;
}
console.log(i);
}
1 2 3 4
while문 밖에서 5
19번
{
let num = [32, 93, 15, 86, 50];
let sum = 0;
for(let i=0; i < num.length; i++){
sum = sum * i;
}
console.log(sum)
}
0
sum의값 0을 모든값을 곱하기때문에 0이라는답이나옴!
20번
{
let a, b, result;
a = 7, b = 4
result = a & b;
console.log(result)
}
비트연산자 & 을 통해 2진수연산을 해볼게요 !
a = 7 >> 0111
b = 4 >> 0100
a&b = 0100 >> 4
console.log(result) 에 찍히는 값은 4입니다.