데이터 불러오기
자바스크립트에서 데이터를 불러오는 종류를 알아봅시다.
01. 변수 : 데이터 불러오기
- 변수 안에 있는 데이터를 불러오는 방법입니다.
{
let x = 100, y = 200, z = "javascript";
console.log(x, y, z);
}
// 100 200 javascript
02. 상수 : 데이터 불러오기
- 상수 안에 있는 데이터를 불러오는 방법입니다.
{
const x = 100, y = 200, z = "javascript"
console.log(x, y, z);
}
// 100 200 javascript
03. 배열 : 데이터 불러오기
- 배열 안에 있는 데이터를 불러오는 방법입니다.
{
const arr = [100, 200, "javascript"];
console.log(arr[0], arr[1], arr[2]);
}
// 100 200 javascript
04. 배열 : 데이터 불러오기 : 2차 배열
- 배열 안에 배열이 또 있는 경우 데이터를 불러오는 방법입니다.
{
const arr = [100, 200, ["javascript","react"]];
console.log(arr[0], arr[1], arr[2][0]); //2차 배열 출력방법
}
// 100 200 javascript
05. 배열 : 데이터 불러오기 : 갯수 구하기
- 배열 안에 있는 데이터의 갯수를 구하는 방법입니다.
{
const arr = [100, 200, "javascript"];
console.log(arr.length); //배열의 갯수를 구할 땐 .length를 쓰면 된다
}
// 3
06. 배열 : 데이터 불러오기 : for()문
- for()문을 사용하여 데이터를 불러오는 방법 입니다.
const arr = [10, 20, 30, 40, 50, 60, 70, 80, 90];
for(let i=0; i<=8; i++) {
console.log(arr[i]);
};
// 10
// 20
// 30
// 40
// 50
// 60
// 70
// 80
// 90
07. 배열 : 데이터 불러오기 : 중첩 for()문
- for()문을 두 번 이상 사용하여 데이터를 불러오는 방법 입니다.
- 중첩 for()문을 사용하여 5*5의 표와 2,3,4 단을 만들어 보았습니다
// 5*5표를 만들어 보자
let table = "<table border='1'>"
for(i=1; i< 6; i++){
table += "<tr>"
for(j=1; j< 6; j++){
table +="<td>"+j+"</td>"
};
table +="</tr>"
};
table += "</table>"
document.write(table);
----------------------------------------------------------------------------------------
// 2-4단을 만들어 보자
for(let i=2; i < 5; i++){
document.write(i+"단 <br>");
for(let j=1; j < 10; j++){
document.write(i + "*" + j +"="+ i*j +" <br>" );
};
};
See the Pen Untitled by kebab000 (@kebab000) on CodePen.
08. 배열 : 데이터 불러오기 : forEach
- 배열을 불러오는 for문을 줄인 메서드입니다
let arr = [10,20,30,40,50,60,70,80,90]
arr.forEach(function(element){
document.write(element);
})
-------------------------------// 화살표 함수로 줄인 내용
arr.forEach(el=>{
document.write(el);
})
// 10 20 30 40 50 60 70 80 90
// 10 20 30 40 50 60 70 80 90
09. 배열 : 데이터 불러오기 : for of
- 배열의 데이터를 불러오는 함수입니다.
const arr = [100, 200, 300, 400, 500, 600];
for(let i of arr){
document.write(i);
}
// 100200300400500600
10. 배열 : 데이터 불러오기 : for in
- 객체를 키를 불러오기 위한 문법입니다
- 요즘엔 배열에도 많이 사용합니다.
const arr = [100, 200, 300, 400, 500, 600];
for(let i in arr){
console.log("a" in obj)
document.write(i);
}
// 012345
11. 배열 : 데이터 불러오기 : map()
- forEach문과 비슷하며, element(값) index(인덱스) array(배열)을 출력하는데 사용합니다.
{
const num= [100, 200,300, 400, 500];
num.forEach(function(el){
document.write(el , "")
});
}
{
const num= [100, 200,300, 400, 500]; //콘솔에 출력
num.forEach(function(el ,i ,a){
console.log(el)
console.log(i)
console.log(a)
});
num.map(function(el ,i ,a){ //겉보기엔 결괏값은 똑같음
console.log(el)
console.log(i)
console.log(a)
});
}
// 100 200 300 400 500
12. 배열 : 데이터 불러오기 : 배열 펼침연산자
- 배열 펼침(Spread) 연산자는 ... 기호로 표시되며, 배열이나 이터러블(iterable) 객체를 개별 요소로 분리하여 전개할 때 사용됩니다.
- 배열 펼침 연산자는 배열을 다른 배열에 병합하거나, 함수의 인수로 배열을 전달할 때 유용하게 사용됩니다.
{
let arr1 = [100, 200, 300, 400, 500];
let arr2 = [600, 700];
console.log(arr1);
console.log(...arr1);
console.log(...arr1, ...arr2);
}
// [100,200,300,400,500]
// 100200300400500
// 100200300400500600700
13. 배열 : 데이터 불러오기 : 배열 구조분해할당(Destruring assignment)
- 배열 구조분해 할당은 배열의 요소를 개별 변수에 할당하는 방법중 하나입니다.
- 이를 통해 배열의 각 요소를 개별 변수로 분리하여 사용할 수 있습니다.
{
let a, b, c;
[a, b, c] = [100, 200, "javascript"];
console.log(a);
console.log(b);
console.log(c);
}
// 100
// 200
// javascript
14. 객체: 데이터 불러오기 : 기본
- 객체에 데이터를 저장하고 불러오는 기본적인 방법입니다.
{
const obj = {
a: 100,
b: 200,
c: "javascript"
}
console.log(obj.a);
console.log(obj.b);
console.log(obj.c);
}
// 100
// 200
// javascript
15. 객체: 데이터 불러오기 : Object
- Object.keys/value/entries(객체명)을써서 키,값 혹은 둘다 를 불러오는 방법입니다.
{
const obj = {
a: 100,
b: 200,
c: "javascript"
}
console.log(Object.keys(obj));
console.log(Object.values(obj));
console.log(Object.entries(obj));
}
// a,b,c
// 100,200,javascript
// a,100,b,200,c,javascript
16. 객체: 데이터 불러오기 : 변수
- 객체의 데이터를 변수에 넣고 변수를 통해 객체의 데이터를 불러오는 방법입니다.
{
const obj = {
a: 100,
b: 200,
c: "javascript"
}
const name1 = obj.a;
const name2 = obj.b;
const name3 = obj.c;
console.log(name1);
console.log(name2);
console.log(name3);
}
// 100
// 200
// javascript
17. 객체: 데이터 불러오기 : for in
- for in 문을 통해 객체 안의 키와 값을 불러오는 방법입니다.
{
const obj = {
a: 100,
b: 200,
c: "javascript"
}
for(let key in obj){
console.log(key);
console.log(obj[key]);
}
}
// a
// 100
// b
// 200
// c
// javascript
18. 객체: 데이터 불러오기 : map()
- map을 통해서 배열 안 객체의 데이터를 하나씩 불러오는 방법입니다.
- 배열에만 사용이 가능하므로 배열 안의 객체가 아닌 객체만 단독으로 있다면 사용하지 못합니다.
{
const obj = [
{a: 100, b: 200, c: "javascript"}
]
obj.map(function(el){
console.log(el.a);
console.log(el.b);
console.log(el.c);
})
//-------------------------화살표 함수 ver.
obj.map((el) => {
console.log(el.a);
console.log(el.b);
console.log(el.c);
})
}
// 100
// 200
// javascript
// 100
// 200
// javascript
19. 객체: 데이터 불러오기 : hasOwnProperty()
- 객체 안에 해당 데이터가 있는지 없는지 true/false로알려줍니다.
{
const obj = {
a: 100,
b: 200,
c: "javascript"
}
console.log(obj.hasOwnProperty("a"));
console.log(obj.hasOwnProperty("b"));
console.log(obj.hasOwnProperty("c"));
console.log(obj.hasOwnProperty("d"));
//------------------------약식으로
console.log("a" in obj);
console.log("b" in obj);
console.log("c" in obj);
console.log("d" in obj);
}
// true
// true
// true
// false
// true
// true
// true
// false
20. 객체: 데이터 불러오기 : 객체 펼침연산자
- 전개구문이라고도 하며 배열처럼 값이 다양한 자료를 한꺼번에 인수로 넘겨주거나 배열과 배열을 합할 때처럼 배열을 하나의 덩어리로 처리해야 할 때 아주 유용합니다.
- 복사, 추가, 결합이 가능합니다.
// 복사
{
const obj1 = {
a: 100,
b: 200,
}
const spread = {...obj1};
console.log(spread.a);
console.log(spread.b);
}
// 100
// 200
// 추가
{
const obj1 = {
a: 100,
b: 200,
}
const spread = {...obj1, c:"javascript"};
console.log(spread.a);
console.log(spread.b);
console.log(spread.c);
}
// 100
// 200
// javascript
// 결합
{
const obj1 = {
a: 100,
b: 200,
}
const obj2 = {
c: "javascript",
d: "react",
}
const spread = {...obj1, ...obj2}
console.log(spread.a);
console.log(spread.b);
console.log(spread.c);
console.log(spread.d);
}
// 100
// 200
// javascript
// react
21. 객체: 데이터 불러오기 : 객체 구조분해할당
- 객체를 분해해서 변수화 시킨 것 입니다.
{
const obj = {
a: 100,
b: 200,
c: "javascript",
}
const {a:name1, b:name2, c:name3} = obj;
console.log(name1);
console.log(name2);
console.log(name3);
}
// 100
// 200
// javascript