๐๋ฌธ์ ์ถ์ฒ
- ๋ฐ๋๋ผ ์ฝ๋ฉ
๋ฌธ์ 4 - ๋ฌป๊ณ ๋๋ธ๋ก
/*
< ๋ฌป๊ณ ๋๋ธ๋ก >
์ซ์ ์์๋ก ์ด๋ฃจ์ด์ง ๋ฐฐ์ด์ด ์ธ์๋ก ์ฃผ์ด์ก์ ๋, ๋ค์๊ณผ ๊ฐ์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์!
๐ ๋ฐฐ์ด์ ์์๊ฐ 2๋ฒ ๋ฐ๋ณต๋๋ ์๋ก์ด ๋ฐฐ์ด์ด ๋ฐํ๋์ด์ผ ํฉ๋๋ค.
๐ ๋ฐํ๋ ๋ฐฐ์ด์ ์ธ์๋ก ๋ค์ด๊ฐ ๋ฐฐ์ด ๊ธธ์ด์ 2๋ฐฐ๊ฐ ๋์ด์ผ ํฉ๋๋ค.
๐ ๋น ๋ฐฐ์ด์ด ์ฃผ์ด์ง ๊ฒฝ์ฐ๋ ๊ณ ๋ คํ์ง ์์๋ ๋ฉ๋๋ค.
+--------------------------------------------------------------------+
| arr | ๋ฆฌํด ๊ฐ |
+--------------------------------------------------------------------+
| [1, 2] | [1, 2, 1, 2] |
+--------------------------------------------------------------------+
| [1, 2, 3] | [1, 2, 3, 1, 2, 3] |
+--------------------------------------------------------------------+
| [5, 7, 3, 1] | [5, 7, 3, 1, 5, 7, 3, 1] |
+--------------------------------------------------------------------+
*/
const arr1 = [1, 2, 1];
const arr2 = [1, 3, 5, 3, 1];
const arr3 = [1, 6, 8, 4, 2, 3];
function doubleArray(arr) {
๐ฌ;
}
const result1 = doubleArray(arr1); // [1, 2, 1, 1, 2, 1]๋ฅผ ๋ฐํํด์ผ ํฉ๋๋ค.
const result2 = doubleArray(arr2); // [1, 3, 5, 3, 1, 1, 3, 5, 3, 1]๋ฅผ ๋ฐํํด์ผ ํฉ๋๋ค.
const result3 = doubleArray(arr3); // [1, 6, 8, 4, 2, 3, 1, 6, 8, 4, 2, 3]๋ฅผ ๋ฐํํด์ผ ํฉ๋๋ค.
if (
checkResult(result1, arr1) &&
checkResult(result2, arr2) &&
checkResult(result3, arr3)
) {
alert("๐");
}
๋ฌธ์ ํ์ด
function doubleArray(arr) {
if (arr.length === 0) {
return [];
}
return arr.concat(arr);
}
- ๋ฌธ์ ์กฐ๊ฑด ์ค์ ๋น ๋ฐฐ์ด์ด ์ฃผ์ด์ง ๊ฒฝ์ฐ ๊ณ ๋ คํ์ง ์๋๋ค๊ณ ํ์ผ๋ฏ๋ก, ๋ง์ฝ arr์ ์ธ๋ฑ์ค๊ฐ 0์ผ ๊ฒฝ์ฐ, (*๋น๋ฐฐ์ด์ผ ๊ฒฝ์ฐ) ๊ณต๋ฐฑ์ ๋ฐํํ๋๋ก ์ฝ๋ ์์ฑ
- concat ํจ์๋ฅผ ์ด์ฉํด์ ๊ธฐ์กด ๋ฐฐ์ด + ์๋ก์ด ๋ฐฐ์ด์ ๋ถ์ฌ์ ์๋ก์ด ๋ฐฐ์ด์ ์์ฑํ๋๋ก ํจ์ ์์ฑ
๋ฌธ์ 5 - ์ซ์ ์ชผ๊ฐ๊ธฐ
/*
< ์ซ์ ์ชผ๊ฐ๊ธฐ >
์ซ์๊ฐ ์ธ์๋ก ์ฃผ์ด์ก์ ๋, ๋ค์๊ณผ ๊ฐ์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์!
๐ ์ฃผ์ด์ง ์ ์ ๊ฐ ์๋ฆฟ์์ "์ซ์"๋ฅผ ์์๋ก ๊ฐ์ง๋ ๋ฐฐ์ด์ ๋ฐํํด์ผ ํฉ๋๋ค.
๐ ๋ฐํ๋ ๋ฐฐ์ด์ ์์๋ "๋ฌธ์์ด"์ด ์๋ "์ซ์"๊ฐ ๋์ด์ผ ํฉ๋๋ค.
+--------------------------------------------------------------------+
| num | ๋ฆฌํด ๊ฐ |
+--------------------------------------------------------------------+
| 2854 | [2, 8, 5, 4] |
+--------------------------------------------------------------------+
| 96586 | [9, 6, 5, 8, 6] |
+--------------------------------------------------------------------+
| 136326 | [1, 3, 6, 3, 2, 6] |
+--------------------------------------------------------------------+
*/
const n1 = 370;
const n2 = 1357;
const n3 = 33333;
function splitNumber(num) {
let numString = num.toString();
let numArray = Array.from(numString);
let result = numArray.map(Number);
return result;
};
const result1 = splitNumber(n1); // [3, 7, 0]๋ฅผ ๋ฐํํด์ผ ํฉ๋๋ค.
const result2 = splitNumber(n2); // [1, 3, 5, 7]๋ฅผ ๋ฐํํด์ผ ํฉ๋๋ค.
const result3 = splitNumber(n3); // [3, 3, 3, 3, 3]๋ฅผ ๋ฐํํด์ผ ํฉ๋๋ค.
if (
checkResult(result1, [3, 7, 0]) &&
checkResult(result2, [1, 3, 5, 7]) &&
checkResult(result3, [3, 3, 3, 3, 3])
) {
alert("๐");
}
๋ฌธ์ ํ์ด
function splitNumber(num) {
let numString = num.toString();
let stringArray = Array.from(numString);
let result = stringArray.map(Number);
return result;
};
- ์ซ์์ ์ธ๋ฑ์ค ๊ธธ์ด๋ฅผ ์ ์ ์๋๋ก toString() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ซ์๋ฅผ ๋ฌธ์์ด์ผ๋ก ๋ณ๊ฒฝ
- ๋ฌธ์์ด์ Array.from() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฐ์ด์ผ๋ก ๋ณ๊ฒฝ
- Map()๋ฉ์๋๋ฅผ ์ด์ฉํ์ฌ ๋ฌธ์์ด์ ์ซ์๋ก ๋ฐ๊ฟ์ฃผ๋ Number()๋ฉ์๋๊ฐ ๊ฐ ๋ฐฐ์ด๋ง๋ค ์ ์ฉ๋ ์ ์๋๋ก ์ฝ๋ ์์ฑ
๋ฌธ์ 6 - ๊ฐ์ฒด ๋ง๋ค๊ธฐ
/*
< ๊ฐ์ฒด ๋ง๋ค๊ธฐ >
์ฒซ ๋ฒ์งธ ์ธ์๋ก ๋ฌธ์์ด๋ก ์ด๋ฃจ์ด์ง ๋ฐฐ์ด, ๋ ๋ฒ์งธ ์ธ์๋ก ์ซ์๋ก ์ด๋ฃจ์ด์ง ๋ฐฐ์ด์ด ๋ค์ด์์ ๋,
๋ ๊ฐ์ง ๋ฐฐ์ด์ ๊ฐ ์์๋ฅผ key, value๋ก ๊ฐ์ง๋ ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ ค ํฉ๋๋ค.
๋ค์๊ณผ ๊ฐ์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์!
๐ ๊ฐ์ฒด๋ฅผ ๋ฐํํด์ผ ํฉ๋๋ค.
๐ ๊ฐ์ฒด์ key ๊ฐ์ arr1์ ์์๊ฐ ๋ฉ๋๋ค.
๐ ๊ฐ์ฒด์ value ๊ฐ์ arr2์ ์์๊ฐ ๋ฉ๋๋ค.
๐ arr1, arr2 ๋ฐฐ์ด์ ๊ธธ์ด๋ ๊ฐ์ต๋๋ค.
๐ ์๋ ์์๋ฅผ ์ฐธ๊ณ ํด ์ฃผ์ธ์.
+--------------------------------------------------------------------+
| arr1, arr2 | ๋ฆฌํด ๊ฐ |
+--------------------------------------------------------------------+
| ["A", "B", "C"], [10, 20, 30] | { A: 10, B: 20, C: 30 } |
+--------------------------------------------------------------------+
| ["D", "E", "F", "G"], [7, 4, 6, 8] | { D: 7, E: 4, F: 6 , G: 8 } |
+--------------------------------------------------------------------+
| ["Jett", "Ken"], [30, 40] | { Jett: 30, Ken, 40 } |
+--------------------------------------------------------------------+
*/
function createArray(arr1, arr2) {
๐ฌ;
}
const result1 = createArray(["Jett", "Ken"], [30, 40]);
const result2 = createArray(["Math", "Science", "English"], [85, 90, 75]);
const result3 = createArray(["Pizza", "Salad", "Pasta", "Steak"], [3, 4, 2, 1]);
if (
checkResult(result1, { Jett: 30, Ken: 40 }) &&
checkResult(result2, { Math: 85, Science: 90, English: 75 }) &&
checkResult(result3, { Pizza: 3, Salad: 4, Pasta: 2, Steak: 1 })
) {
alert("๐");
}
๋ฌธ์ ํ์ด
function createArray(arr1, arr2) {
var result = {};
for (var i = 0; i < arr1.length; i++) {
result[arr1[i]] = arr2[i];
}
return result;
}
- result๋ผ๋ ๋ณ์๋ฅผ ์ ์ธํด์ ๊ฐ์ฒด๋ฅผ ์ด๊ธฐํ์ํค๋ ์ฝ๋ ์์ฑ
- for ๊ตฌ๋ฌธ์ ํ์ฉํด์ i๊ฐ ๋ฐฐ์ด์ ๊ธธ์ด๋ณด๋ค ์์ ๋ ๊น์ง ๋ฐฐ์ด์ ์ํํ๋๋ก ์์ฑ
- arr1์ ์์๋ฅผ key๋ก, arr2์ ์์๋ฅผ value๋ก ์ฌ์ฉํ๋ ๊ฐ์ฒด๋ฅผ ์์ฑ