알고리즘

string to integer 자체 함수

소행성왕자 2024. 12. 14. 11:23
function stringToInteger(str) {
  let result = 0;
  let isNegative = false;
  let i = 0;

  // 부호 처리
  if (str[0] === '-') {
    isNegative = true;
    i = 1;
  } else if (str[0] === '+') {
    i = 1;
  }

  // 각 자릿수를 순회하며 정수로 변환
  for (; i < str.length; i++) {
    const digit = '0123456789'.indexOf(str[i]);
    if (digit === -1) {
      throw new Error("Invalid input: string contains non-digit characters");
    }
    result = result * 10 + digit;
  }

  return isNegative ? -result : result;
}