length 의 특별한 능력 을 시험 해 보 세 요.
1634 단어 JS 깊이 이해
아래 코드 출력의 결 과 는 무엇 입 니까?
const season = ['spring','summer','autumn','winter'];
season.length = 0;
console.log(season[0]); // ??
정 답: undefined
분석 하 다.
이 문 제 를 보 았 을 때 마음속 으로 생각 하 는 답 은 'spring' 이 고 length 는
writeable: false
인 줄 알 았 다.그러나: ECMAScript 2015: lengthThe length property initially has the attributes { [[Writable]]: true, [[Enumerable]]: false, [[Configurable]]: false }.
실행
season.length = 0;
할 때 season 의 모든 요소 가 삭제 되 었 기 때문에 마지막 으로 undefined 를 출력 합 니 다.따라서 length 를 조작 하 는 데 부작용 이 있 을 수 있 습 니 다. (자신의 배열 요 소 를 삭제 합 니 다) 조 심 스 럽 게 조작 하 세 요!