Notice
Recent Posts
Recent Comments
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Archives
Today
In Total
관리 메뉴

A Joyful AI Research Journey🌳😊

JavaScript: padStart, padEnd, map() 본문

💻Bootcamp Self-Study Revision✨/JavaScript, jQuery, Ajax

JavaScript: padStart, padEnd, map()

yjyuwisely 2023. 6. 28. 22:00

padStart: the padding is added at the start of the string and
padEnd: the padding added at then end
.

index === 0 is a condition used to determine if the current element being processed in the map() function is the first element of the row.

코드)
알고리즘 문제는 하단 output처럼 문자는 왼쪽, 숫자는 오른쪽으로 테이블에 정렬하기였다.

const data = [
  ["AAA", 1.23456, 123456],
  ["BBBBB", 12.3, 123],
  ["CCCC", 123.4, 1234]
];

function newTable(row) {
  const formatValues = row.map((value, index) => {
    if (index === 0) {
      return value.padEnd(7);
    } else if (typeof value === 'number') {
      return value.toFixed(value % 1 === 0 ? 0 : 2).padStart(9);
    } else {
      return value;
    }
  });
  return '| ' + formatValues.join(' | ') + ' |';
}

const output = data.map(newTable).join('\n');
console.log(output);


const data = [
  ["AAA", 1.23456, 123456],
  ["BBBBB", 12.3, 123],
  ["CCCC", 123.4, 1234]
];

// Function to format the output row
function formatRow(row) {
  const formattedValues = row.map((value, index) => {
    if (index === 0) {
      return value.padEnd(7);
    } else if (typeof value === 'number') {
      return value.toFixed(value % 1 === 0 ? 0 : 2).padStart(9);
    } else {
      return value;
    }
  });
  return `| ${formattedValues.join(' | ')} |`;
}

// Generate the output table
const output = data.map(formatRow).join('\n');

// Print the output
console.log(output);

결과)

728x90
반응형
Comments