- 변수
기억하고 싶은 값을 메모리에 저장한다.
메모리의 저장된 값을 읽어들여서 재사용한다.
- 변수의 5가지 주요 개념
변수 이름 : 저장된 값의 고유 이름
변수 값 : 변수에 저장된 값
변수 할당 : 변수에 값을 저장하는 행위
변수 선언 : 변수를 사용허가 위해 컴퓨터에 알리는 행위
변수 참조 : 변수에 할당된 값을 읽어오는 것
- 변수를 선언할 수 있는 3가지 방법
var, let, const
var myVar = "Hello World";
console.log(myVar); // Hello World 출력
let myLet = "Hello World1";
console.log(myLet); // Hello World1 출력
const myConst = "Hello World2";
console.log(myConst); // Hello World2 출력
let num1 = 10;
console.log(num1); // 10
console.log(typeof num1); // "number"
let num2 = 3.14;
console.log(num2); // 3.14
console.log(typeof num2); // "number"
let num3 = 2.5e5; // 2.5 x 10^5
console.log(num3); // 250000
console.log(typeof num3); // "number"
NaN(Not a Number)은 자바스크립트에서 숫자가 아님을 나타내는 값입니다. 보통 수학적으로 정의되지 않는 계산을 수행하거나, 숫자가 아닌 값을 숫자로 변환하려고 할 때 발생합니다.
let num5 = 1 / 0;
console.log(num5); // Infinity
console.log(typeof num5); // "number"
5-1. Infinity (무한대 마이너스)
let num6 = -1 / 0;
console.log(num6); // -Infinity
console.log(typeof num6); // "number"
_
let str = "Hello World";
consile.log(str.length); // 12 출력
let str = "Hello, ";
let str = "World!";
let result = str1.concat(str2);
console.log(result); // Hello, World! 출력
let str3 = "Hello, World!";
console.log(str3.substr(7, 5)); // World 출력
console.log(str3.slice(7, 12)); // World 출력
let str4 = "Hello, World!";
console.log(str4.search("World")); // 7 출력
let str5 = "Hello, World!";
let result01 = str5.replace("World", "Javascript")
console.log(str5.result01); // Hello, Javascript! 출력
let str6 = "apple, banana, kiwi";
let result02 = str6.split(",")
console.log(result02); // ['apple', 'banana', 'kiwi'] 출력
EX)
let x = 10;
let y = 5;
if (x > y) {
console.log("x is greater than y");
} else {
console.log("x is less than or equal to y");
}
let a = true;
let b = false;
console.log(a && b); // false
console.log(a || b); // true
console.log(!a); // false
let x;
console.log(x); // undefined 출력
'명시적'
으로 나타낸다.let y = null;
console.log(y); // null 출력
예시) 1
let person = {
name: "홍길동",
age: 30,
gender: "남자",
};
예시) 2
function Person(name, age, gender) {
this.name = name;
this.age = age;
this.gender = gender;
}
let person1 = new Person("홍길동", 30, "남자");
let person2 = new Person("홍길순", 20, "여자");
예시) 3
console.log("1", person.name);
console.log("2", person.age);
console.log("3", person.gender);
예시) 1
let person = {
name: "홍길동",
age: 30,
gender: "남자",
};
let keys = Object.keys(person);
console.log("keys => ", keys); // keys => [ 'name', 'age', 'gender' ]
예시) 2
let values = Object.values(person);
console.log("values => ", values); // values => [ '홍길동', 30, '남자' ]
예시) 3
let entries = Object.entries(person);
console.log("entries =>", entries); // entries => [ [ 'name', '홍길동' ], [ 'age', 30 ], [ 'gender', '남자' ] ]
예시) 4
let newPerson = {};
Object.assign(newPerson, person, {// 수정});
console.log("newPerson =>", newPerson); // newPerson => { name: '홍길동', age: 30, gender: '남자' }
예시) 5
// person1 별도 공간에 대한 주소를 저장
let person1 = {
name: "홍길동",
age: 30,
gender: "남자",
};
// person2 별도 공간에 대한 주소를 저장
let person2 = {
name: "홍길동",
age: 30,
gender: "남자",
};
// str은 크기가 크지않기 때문에 직접 저장한다.
let str1 = "aaa";
let str2 = "aaa";
console.log("answer =>", person1 === person2); // nswer => false
console.log("answer2 =>", str1 === person2); // nswer2 => true
console.log(JSON.stringify(person1) === JSON.stringify(person2)); // true
예시) 6
let person1 = {
name: "홍길동",
age: 30,
};
let person2 = {
gender: "남자",
};
// ... : spread operrator
let perfectMan = { ...person1, ...person2};
console.log(perfectMan); // { name: "홍길동", age: 30, gender: "남자" }
let number = [1, 2, 3, 4, 5];
let fruit = ["사과", "바나나", "오렌지"];
let number = new Array(5);
console.log(fruits.length); // 3
console.log(number.length); // 5
console.log(fruits[0]); // 사과
console.log(fruits[1]); // 바나나
console.log(fruits[2]); // 오렌지
let fruits = ["사과", "바나나"];
console.log("1 =>", fruits); // 1 => ["사과", "바나나"]
// push
fruits.push("오렌지");
console.log("2 =>", fruits); // 2 => ["사과", "바나나", "오렌지"]
let fruits = ["사과", "바나나"];
console.log("1 =>", fruits);; // 1 => ["사과", "바나나"]
// pop
fruits.pop();
console.log("2 =>", fruits);; // 2 => ["사과"]
let fruits = ["사과", "바나나", "키위"];
console.log("1 =>", fruits); // 1 => ["사과", "바나나", "키위"]
// shift
fruits.shift();
console.log("2 =>", fruits); // 2 => ["바나나", "키위"]
let fruits = ["사과", "바나나", "키위"];
fruits.unshift("포도");
console.log(fruits); // ["포도", "사과", "바나나", "키위"]
let fruits = ["사과", "바나나", "키위"];
fruits.splice(1, 1, "포도");
console.log(fruits); // ["사과", "포도", "키위"]
fruits.splice((삭제할 요소의 위치순서), (삭제할 요소의 개수 ), "(넣을요소)";
let fruits = ["사과", "바나나", "키위"];
let slicedFruits = fruits.slice(1, 2);
console.log(slicedFruits); // ["바나나"]
let numbers = [4, 1, 5, 4, 5];
numbers.forEach(function (item) {
console.log("item입니다 =>" + item);
});
// item입니다 => 4
item입니다 => 1
item입니다 => 5
item입니다 => 4
item입니다 => 5
let numbers = [4, 1, 5, 4, 5];
let newNumbers = numbers.map(function (item) {
return item * 2;
});
console.log(newNumbers); // [8, 2, 10, 8, 10]
let numbers = [4, 1, 5, 4, 5];
let filteredNumbers = numbers.filter(function (item) {
return item === 5;
});
console.log(filteredNumbers); // [5, 5]
let numbers = [4, 1, 5, 4, 5];
let result = numbers.find(function (item) {
return item > 3;
});
console.log(result); // 4
let result1 = 1 + "2";
console.log(result1); // 12 출력
console.log(typeof result1); // string 출력
let result2 = "1" + true;
console.log(result2); // 1ture 출력
console.log(typeof result2); // string 출력
let result3= 1- "2";
console.log(result3); // -1 출력
console.log(typeof result3); // number 출력
let result4= "2" * "3";
console.log(result4); // 6 출력
console.log(typeof result4); // number 출력
console.log(Boolean(0)); // false
console.log(Boolean("")); // false
console.log(Boolean(null)); // false
console.log(Boolean(undefined)); // false
console.log(Boolean(NaN)); // false
console.log(Boolean("false")); // true
console.log(Boolean({})); // true
let result5 = String(123);
consolr.log(typeof result5); // string
console.log(result5) // 123
let result6 = String(true);
consolr.log(typeof result6); // string
console.log(result6) // true
let result7 = String(false);
consolr.log(typeof result7); // string
console.log(result7) // false
let result8 = String(null);
consolr.log(typeof result8); // string
console.log(result8) // null)
let result9 = String(undefined);
consolr.log(typeof result9); // string
console.log(result9) // undefined
let result10 = Number("123");
console.log(result10); // 123
console.log(typeof result10); // number