- 자 오늘도 금요일이라 시험을 보는 날이 되었습니다!!
- 같이 문제를 보시고 제가 틀린문제를 같이 풀어보겠습니다.
// 01. 결괏값을 작성하시오.
{
if( null ){
console.log("true");
} else {
console.log("false");
}
}
// 정답은 false
// 02. 결괏값을 작성하시오.
{
let num = 0;
while( num <= 5 ){
num++;
console.log(num);
}
}
// 정답은 1,2,3,4,5,6
- 문제를 보면 num이라는 변수가 0 에서 시작을 합니다. wlile문의 조건은 5보다 작거나 같을 때 true이네요!!
- 먼저 0이었던 num이 함수안에서 num++을 만나 1이 되었고 출력되어 1이 출력되었습니다.
- 그리고 1인 num이 또 num++ 을 만나 2가 되었고 출력되었죠
- 그렇게 1,2,3,4,5까지 반복되었습니다.
- 중요한건 이 다음입니다. 5인 num이 num++을 만나 6이 된 후 console.log()를 만나 출력되었습니다.
- 만약 console.log가 num++ 보다 앞에 있었다면 0부터 시작해서 5가 출력된 뒤 6이 되어 출력되지 않았겠죠.
// 03. 결괏값을 작성하시오.
{
const str = [100, 200, 300, 400, 500];
str.forEach(function(i){
console.log(i);
});
}
// 정답은 100,200,300,400,500
// 04. 결괏값을 작성하시오.
{
const str = [100, 200, 300, 400, 500];
for(let i of str){
console.log(i);
}
}
// 정답은 100,200,300,400,500
// 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 문이 나왔습니다. 이를 통해 key라는 변수에 obj의 키를 저장시켜주었습니다.
- 그리고 console.log(key) 를 통해 키를 출력을 시켜주고
- console.log(obj.[key])를 통해 obj의 값을 출력 시켜 준 것입니다.
- 근데 순서가 중요합니다 console.log(key)가 실행되고 console.log(obj.[key])가 실행되고 다시 console.log(key)가 실행된 뒤 console.log(obj.[key])가 실행되었기 때문에 정답이 a, b, 100, 200이 아니라 a, 100, b, 200이 되는 것 입니다.
// 06. 결괏값을 작성하시오.
{
let num = 0;
while( true ){
num++;
if( num == 3 ){
continue;
}
if( num > 6 ){
break;
}
console.log(num);
}
}
// 정답은 12456
// 07. 결괏값을 작성하시오.
{
for(let i=1; i<=5; i++){
console.log(i);
if(i == 3){
break;
}
}
}
// 정답은 1,2,3
// 08. 결괏값을 작성하시오.
{
let num = 0;
while (num < 20){
num++;
console.log(num);
if(num == 1){
break;
}
}
}
// 정답은 name1, name2, name3
// 09. 결괏값을 작성하시오.
{
let num = 100;
switch(num){
case 100 :
console.log("100");
break;
case 200 :
console.log("200");
break;
default :
console.log("300");
}
}
// 정답은 100
// 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);
}
// 정답은 2
// 12. 결괏값을 작성하시오.
{
let sum = 0;
for(var i=1; i<=100; i++) {
sum += i;
};
console.log(sum);
}
// 정답은 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
- 객체구조분해 할당입니다.
- 객체 obj 안에 있는 데이터를 a,b,c 라는 변수에 저장하는 문제입니다.
- 너무 복잡하게 생각할 필요없이 객체의 이름을 넣어주면 됩니다.
// 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);
}
// 정답은 100 200 javascript jquery
// 16. 다음의 결괏값을 작성하시오!
{
const char = ["J","A","V","A","S","C","R","I","P","T"];
for(let i=9; i>=0; i--){
console.log(char[i]);
}
}
// 정답은 TPIRCSABAJ
// 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);
}
// 정답은 8,2,3,4,
// 18. 다음의 결괏값을 작성하시오
{
let i = 1;
while(i < 5){
console.log(i);
i++;
}
console.log(i);
}
//1,2,3,4,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
// 20. 다음의 결괏값을 작성하시오!
{
let a, b, result;
a = 7, b = 4
result = a & b;
console.log(result)
}
// 정답은 4