나는 html 5 캔버스의 도형을 그리는 데 도움이되는 작은 도형 객체를 만들기 위해 노력하고 있습니다. 지금까지 나는 가지고있다.도형 클래스가 자바 스크립트입니까?
var Shape = function (config) {
this.initialize(config);
};
var proto = Shape.prototype;
proto.initialize = function (config) {
this.x = config.x || 0;
this.y = config.y || 0;
this.width = config.width || 0;
this.height = config.height || 0;
this.color = config.color || false;
};
/*
Circle
*/
var Circle = function (config) {
this.initialize(config);
};
proto = Circle.prototype;
proto = new Shape();
하지만 작동하지 않는 것 같습니다! 나는 그렇게 새로운 동그라미를 만들기 위해 전화 할 때;
var s1 = new Circle({x: 10, y: 10, width: 10, height: 10, color: "red"});
나는 다른 모양을 설정하고 모양이된다 몇 가지 일반적인 속성을 할당하는 데 도움이되는 기본 클래스 Shape
을 만들 수있는 방법 등과 같은 Circle
, Rect
요법? 나는 코드가 왜, 내가 그것을 더 나은 방법을 설명하시기 바랍니다 오프 방법입니다 그래서 만약 자바 스크립트를 배우려고 노력하고
,
감사합니다.
입니까? 주로 ES5를 구현하지 않는 브라우저가 관심을 가질 때 주로 이런 종류의 코드를 보게됩니다. –
프로토 타입을 변수에 저장하는 것은 좋지 않은가요? – user2251919
@ user2251919 개체는 참조로 전달됩니다. 'Circle.prototype' 객체에 대한 참조를'proto' 변수에 저장하고 있습니다. 'proto'에 새로운 객체를 할당하는 것은'Circle.prototype'에 영향을 미치지 않고'proto' 변수에 새로운 참조를 할당 할 것입니다. SLaks는 답변의 첫 번째 섹션에서 설명합니다. –