그 중
이 두 문장은 무엇을 의미하나요?
业精于勤,荒于嬉;行成于思,毁于随。
Object(this)는 새로운 객체를 생성하는 것이 아니라 이것을 Object로 변환하는 것입니다. Array나 Object처럼 객체 자체인 객체에는 당연히 쓸모가 없습니다.
O.length >>> 0这里的三个大于号可不是表示始终大于等于0,而是JS的一个位运算符,表示无符号位移,后面的0表示位移0位,不过JS在执行无符号位移之前,会转成无符号32位整数来计算,所以>>>0表示的就是把O.length양의 정수로 변환합니다.
O.length >>> 0
>>>0
O.length
왜 이 두 단계가 필요한가요? JS의 배열은 이미 객체가 아닌가요? array.length 자체는 확실히 음수가 아닌 정수가 아닌가요? 이는 이 함수가 범용 함수이고 배열이 아닌 호출을 사용하여 호출할 수 있기 때문입니다. 예:
여기서 "abc"는 함수 본문에 있는 것입니다. 기본 유형이며 구문에서 다음을 사용하려면 객체로 패키징해야 합니다.
그리고 Array.prototype.indexOf 메소드는 기본 타입뿐만 아니라 Array가 아닌 객체에도 사용할 수 있습니다. 이때 길이는 스스로 지정하므로 양의 정수라고 보장할 수 없습니다. 함수 내에서 배열이 아닌 값으로 변환해야 합니다.
Object(this)는 새로운 객체를 생성하는 것이 아니라 이것을 Object로 변환하는 것입니다. Array나 Object처럼 객체 자체인 객체에는 당연히 쓸모가 없습니다.
O.length >>> 0
这里的三个大于号可不是表示始终大于等于0,而是JS的一个位运算符,表示无符号位移,后面的0表示位移0位,不过JS在执行无符号位移之前,会转成无符号32位整数来计算,所以>>>0
表示的就是把O.length
양의 정수로 변환합니다.왜 이 두 단계가 필요한가요? JS의 배열은 이미 객체가 아닌가요? array.length 자체는 확실히 음수가 아닌 정수가 아닌가요? 이는 이 함수가 범용 함수이고 배열이 아닌 호출을 사용하여 호출할 수 있기 때문입니다. 예:
으아악여기서 "abc"는 함수 본문에 있는 것입니다. 기본 유형이며 구문에서 다음을 사용하려면 객체로 패키징해야 합니다.
으아악그리고 Array.prototype.indexOf 메소드는 기본 타입뿐만 아니라 Array가 아닌 객체에도 사용할 수 있습니다. 이때 길이는 스스로 지정하므로 양의 정수라고 보장할 수 없습니다. 함수 내에서 배열이 아닌 값으로 변환해야 합니다.
으아악