๋ฐฐ์ด๊ณผ ๊ฐ์ฒด : JavaScript์์ ๋๋์ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ฒ ๋ค๋ฃฐ ์ ์๊ฒ ํด์ฃผ๋ ๋ฐ์ดํฐ ํ์ .
๋ฐฐ์ด์ด๋ ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ๋ฉด ์ฌ๋ฌ ๋ฒ์ ์ ์ธ๊ณผ ํ ๋น์ ํด์ผ๋ง ํ๋ ์์ ์ ๋จ ํ ๋ฒ์ ์ ์ธ์ผ๋ก ํด๊ฒฐํ ์ ์๋ค.
๋ฐฐ์ด : ์์๊ฐ ์๋ ๊ฐ.
์ฌ๊ธฐ์ ์์๋ ์ธ๋ฑ์ค(Index)๋ผ๊ณ ๋ถ๋ฅธ๋ค. 0๋ถํฐ ๋ฒํธ๋ฅผ ๋งค๊ธด๋ค.
์ฌ๊ธฐ์ ๊ฐ์ ์์(element)๋ผ๊ณ ๋ถ๋ฅธ๋ค.
- ๊ฐ์ ์ธ๋ฑ์ค๋ฅผ ์ด์ฉํด ์ ๊ทผํ๋ค.
- ๋ฐฐ์ด์ ์ธ๋ฑ์ค ๊ฐ์ ํ ๋น์ ํตํด ๋ณ๊ฒฝํ ์ ์๋ค.
- ์กด์ฌํ์ง ์๋ ์์๋ฅผ ์ฐธ์กฐํ๋ฉด undefined๊ฐ ๋ฐํ๋๊ณ , ๊ทธ ๋ฐฐ์ด์๋ empty๋ผ๊ณ ๋ฐํ๋๋ค.
๐์ถ๊ฐ๊ณต๋ถ ์ฐธ๊ณ ๐
2022.05.10 - [JavaScript] - TIL) ํฌ์๋ฐฐ์ด, ๋ฐฐ์ด empty, ๋ฐฐ์ด undefined
let myNumber = [[13, 58], [7, 54], [67, 1]];
myNumber์ 1๋ฒ์งธ ์ธ๋ฑ์ค ๊ฐ์? / myNumber[1] = [7, 54]
myNumber์ 1๋ฒ์งธ ์ธ๋ฑ์ค ๊ฐ์ 0๋ฒ์งธ ์ธ๋ฑ์ค ๊ฐ์? myNumber[1][0] = 7
- ๋ฐฐ์ด ๊ธธ์ด ์์๋ด๊ธฐ .length
let myNumber = [74, 45, 12, 4];
myNumber.length; //4
์จ์ ์ ์ด์ฉํด์ ๋ณ์๊ฐ ๊ฐ์ง๊ณ ์๋ ์์ฑ (property)์ ์ ๊ทผํ ์ ์๋ค.
- ๋ฐฐ์ด ์์ ๋ง์ง๋ง์ ์ถ๊ฐํ๊ธฐ .push()
let myNumber = [74, 45, 12, 4];
myNumber.push(98); // 5
// myNumber = [74, 45, 12, 4, 98]
์จ์ ์ ์ด์ฉํด์ ๊ด๋ จ๋ ๋ช ๋ น(method)๋ ์คํํ ์ ์๋ค. ๋ช ๋ น์ ์คํํ ๋๋ ํจ์๋ฅผ ์คํํ๋ฏ ๊ดํธ๋ฅผ ์ด๊ณ ๋ซ๋ ํํ๋ก ์คํํ๋ค.
- ๋ฐฐ์ด ์ฒซ๋ฒ์งธ์ ์ถ๊ฐํ๊ธฐ .unshift()
let myNumber = [74, 45, 12, 4];
myNumber.unshift('smile'); // 5
// myNumber = ['smile',74, 45, 12, 4]
- ๋ฐฐ์ด ๋ง์ง๋ง ์์ ์ญ์ ํ๊ธฐ .pop()
let myNumber = [74, 45, 12, 4];
myNumber.pop(); // 4
// myNumber =[74, 45, 12]
- ๋ฐฐ์ด ์ฒซ๋ฒ์งธ ์์ ์ญ์ ํ๊ธฐ .shift()
let myNumber = [74, 45, 12, 4];
myNumber.shift(); // 74
// myNumber = [45, 12, 4]
- ๋ฐฐ์ด์ธ์ง ํ๋ณํ๊ธฐ Array.isArray();
let words = ['ํ๋','๋ฐ๋','๋ณ'];
Array.isArray('๋ฌธ์์ด'); // false
Array.isArray(123); // false
Array.isArray(words); // true
Array.isArray([]); // true
- ํน์ ๊ฐ์ด ๋ฐฐ์ด์ ํฌํจ๋์ด ์๋์ง ํ์ธํ๊ณ ์์ผ๋ฉด ์ธ๋ฑ์ค๊ฐ, ์์ผ๋ฉด -1 return .indexOf()
let fruits = ['banana', 'apple', 'watermelon'];
fruits.indexOf('apple'); // 1
fruits.indexOf('watermelon'); // 2
fruits.indexOf(4); // -1
fruits.indexOf('pineapple'); // -1
๋ฐฐ์ด์ ์์ผ๋ฉด -1์ด ๋์จ๋ค.
- ํน์ ๊ฐ์ด ๋ฐฐ์ด์ ํฌํจ๋์ด ์๋์ง ์๋์ง ํ์ธํ๊ณ boolean์ผ๋ก return .includes() // IE์์๋ ํธํ์๋๋ค.
let fruits = ['banana', 'apple', 'watermelon'];
fruits.indexOf('apple'); // true
fruits.indexOf('pineapple'); // false