[CodeKata JS] Be Concise IV - Index of an element in an array

ryan·2021년 2월 24일
0

CodeKata JS

목록 보기
5/26
post-thumbnail

Task

제공되는 함수는 두 파라미터(array, element)를 인자로 받고, 다음과 같은 규칙을 따르는 find함수입니다. arrayelement가 발견된 경우에는 요소의 index를 반환하고, 그렇지 않으면 "Not found를 반환합니다. 당신의 임무는 Kata의 엄격한 문자 수 제한에 대한 요구 사항을 충족하기 위해 가능한 한 코드를 줄이는 것입니다. (85 이하) 모든 배열 요소가 고유하다고 가정 할 수 있습니다. + kata 문제를 만든 사람이 원하는 방법을 사용해야합니다.

Initial Setting

function find(array, element) {
  for (let i = 0; i < array.length; i++) {
    if (array[i] === element) return i;
  }
  return "Not found";
}

First attempt

// Test 통과
// kata를 만든 사람이 원하는 메서드 사용 안함.
// 문자 수 초과

const find = (array, element) => {
  for(const [i, v] of array.entries()) {
    if(v === element) return i
  }
  return "Not found";
}

Second attempt

// Test 통과
// kata를 만든 사람이 원하는 메서드 사용 안함.

const find=(a, e)=>{
  const f=a.findIndex((v, i)=>v===e);
  return f!==-1?f:"Not found";
}

My Solution

// 하... indexOf라니...

const find = (a, e) => {
  let found = a.indexOf(e)
  return found!==-1?found:"Not found";
}

Solution 1 of Another User

const find = (a, x) => (x = a.indexOf(x)) < 0 ? 'Not found" : x

Solution 2 of Another User

var find = (a,e,i=a.indexOf(e))=>i>=0?i:"Not found"

Solution 3 of Another User

var find = (a, e) => a.includes(e) ? a.indexOf(e) : "Not found";

링크

profile
👨🏻‍💻☕️ 🎹🎵 🐰🎶 🛫📷

0개의 댓글