문제

Stackers의 추천에 따라 Crockford의 우수한 것을 읽었습니다. JavaScript : 좋은 부분.

이 책은 훌륭한 책이지만 JavaScript의 기본 기능을 사용하는 가장 좋은 방법을 설명하는 데 전념하기 때문에 다른 많은 JavaScript 프로그래머의 노력을 복제하지 않고 어떻게 조언을 실천할 수 있는지 잘 모르겠습니다.

예를 들어이 구절을 취하십시오.

새 객체를 만들 때 프로토 타입이어야 할 객체를 선택할 수 있습니다. JavaScript가 제공하기 위해 제공하는 메커니즘은 지저분하고 복잡하지만 상당히 단순화 할 수 있습니다. 우리는 추가 할 것입니다 create 방법에 대한 방법 Object 기능. 그만큼 create 메소드는 이전 객체를 프로토 타입으로 사용하는 새 개체를 만듭니다.

if (typeof Object.create !== 'function') {
 Object.create = function(o) {
  var F = function () {};
  F.prototype = o;
  return new F();
}

모든 JavaScript 프로젝트 에이 코드를 수동으로 추가 할 수 있지만 모든 것을 추적하는 것은 큰 고통이 될 것입니다.

구현하는 라이브러리가 있습니까? 좋은 부분'권장 사항을 추천하여 추적 해야하는 어려움을 구해야합니다 (/ 물리적으로 모두 입력)?

도움이 되었습니까?

해결책

원기 a를 포함한 많은 훌륭한 기능이 있습니다 수업 도우미 객체 프로토 타입을 통해 JS "상속"의 세부 사항을 처리합니다.

편집 : 젠장, jQuery (내 자신의 선택 도서관)가 jQuery.extend

다른 팁

그는 야후에서 일하지 않습니까? 항상 사용할 수 있습니다 야후 사용자 인터페이스 라이브러리.

개인적으로, 나는 부분적입니다 jQuery, 그것은 나를 더 간결한 것으로 볼 때, 당신은 알고 있습니다 : 코스를위한 말.

도조 크록 포드의 아이디어를 매우 밀접하게 따랐습니다. 예를 들어, 위에있는 기능 아래에서 구현 한 코드 스 니펫의 구현이 있습니다. dojo.delegate (더 빠른 형태로).

티에 대한 그의 추천을 따르는 특정 프로젝트가 있다고 생각하지 않습니다. 대부분의 툴킷은 실제로 그의 권장 사항과 패턴 중 상당수에 동의하지 않습니다. 위의 코드 스 니펫과 같은 특정 기능에 대해 궁금하다면 프로젝트에서 사용하려는 책의 특정 도구에 대해 묻는 것이 좋습니다.

Yui는 Crockford가 그의 책에서 가르치는 것에 가장 가깝다고 생각합니다. (그는 야후 건축가이기도하며 말이됩니다)

살펴보십시오 es5-shim, 불완전하지만 Shim을 제공하는 라이브러리 Object.create() 그리고 다른 것들.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top