last.js (7kyu 95)

Codewars 알고리즘 풀이


Problem

  • Find the last element of the given argument(s).
    • 주어진 인수의 마지막 element를 반환한다.


Solution 01

function last(list) {
  let lastArgument = arguments[arguments.length - 1];
  let lastElement = list[list.length - 1];
  
  return arguments.length > 1 ? lastArgument : lastElement || lastArgument;
}

last('abcd');          // d
last([1, 2, 3, 4]);    // 4
last(1, 'b', 3, 'd');  // d

arguments: arguments 객체는 모든 함수 내에서 사용 가능한 지역 변수이다. 함수 내에서 모든 인수를 참조할 수 있다.


Solution 02

function last(list) {
  let lastArgument = arguments[arguments.length - 1];
  let lastElement = lastArgument[lastArgument.length - 1] || lastArgument;
  
  return lastElement;
}

last('abcd');          // d
last([1, 2, 3, 4]);    // 4
last(1, 'b', 3, 'd');  // d