splice
1
2
3
const secretCode = 'abc';
pressed.push(e.key);
pressed.splice(-secretCode.length - 1, pressed.length - secretCode.length);
-
배열.splice(1,2,3)
- 첫 번째 파라미터
- 잘라내기를 시작할 인덱스 번호
- 음수로도 뒤에서 -1 부터 시작해서 선택 가능
- 첫번째 요소가 -3 일경우
- -4 -5 가 되어도 첫번째 요소를 선택한다
- 두 번째 파라미터
- 0 이하의 값이면 기존 배열에 추가가 일아난다
- 추가하는 내용은 세 번째 인자로 들어온다
- 세 번째 인자가 없다면 아무 변화가 없다
- 두 번째 인자가 1 이상인 경우
- 1이면 첫 파라미터의 인덱스의 값이 잘려나옴
반환 받지 않으면 잘라 버림 - 2이면 인덱스와 인덱스 + 1 의 값이 잘려나옴
- 1이면 첫 파라미터의 인덱스의 값이 잘려나옴
- 첫 번째 파라미터
느낀점
splice의 인자 값들이 고정 값 이 아니어서 처음에 이해가 안 갔다
구현된 코드는 미리 지정한 secretCode의 글자 수만큼
배열의 길이를 유지시키며 배열의 내용과 같은지 확인하는 것
또한 splice를 통해 맨 앞 요소를 제거
만약 secretcode가 3문자이고 입력된 값이 abcd… 라면
abc 다음 d 가 들어오면 bcd 가 된다
- splice 첫 번째 인자는 0을 넣어도 결과는 같다