겹치는 키 검색 용어 때문에 찾기가 정말 까다 롭습니다. 나는이 회로 게임을 만들고있다. 참고로, 스타일 측면에서 볼 때 조금 변경 될 수도 있지만 (예 : number_of_boards
또는 기타), 다른 것들에는 재사용되지 않지만 속성 이름은 다시 사용됩니다 (예 : 내가하지 않으려는큰 개체의 함수로 사용 된 개체 생성자
CIRCUIT_BOARD = {
"blankGridSquare": function(){
//Returns brand new object that is one blank grid square of the map
}
, "blankMap": function(width,height){
//Returns brand new object that has a bunch of blank grid squares
}
, "copyMap": function(map){
//Returns new object with the same value as parameter map
}
, "newBoard": function(svg,width,height,ioPlugs,map){
//Returns new object with a target svg,
//either a blank map or a copy of the given map,
//a set of ioPlugs,
//the electric current set up,
//etc.
//Initializes a few other things
}
// and other functions of course...
}
: 나는 한 페이지에 내 켈트 매듭 발생기 및 회로 게임이 있다면, 내가 KNOT.draw
및 CIRCUIT_BOARD.draw
)
그래서있을 것입니다, 여기에 내 현재 세트까지의 짧은 버전입니다 하나의 변수에 모든 함수가있는 것을 제거하십시오. 한 페이지에 여러 게임을 넣을 수있는 유연성이 필요합니다. 나는 올바르게 생성자를 만드는 것은 키워드를 사용하는 것을 포함한다는 것을 읽었다. 그러나 이러한 생성자에 대해 this
을 사용하려고 할 때마다 예를 들어 모든 단일 gridSquare에 연결된 모든 기능이있는 수많은 기능이있는지도가 표시됩니다.
그래서 질문은 어떻게 여러 개체 생성자를 다른 개체의 모든 속성 인 인스턴스가 아닌 함수로 만들 수 있습니까? 그 응축 된 질문이 적절하게 말로 표현되어 있는지 나는 모른다.
'new CIRCUIT_BOARD.someFunction()'을 호출하면 해당 호출 내에서'this'의 값이 새로운 객체가됩니다. 호출 앞에서'new'를 사용하지 않으면'this'의 값은'CIRCUIT_BOARD' 객체 자체가됩니다. – Pointy
그래서 "blankMap"함수 안에서'new CIRCUIT_BOARD.blankGridSquare'를 사용하면, 여분의 함수없이 의도 된 빈 사각형 만 줄 것입니다. ... 지금 테스트 중 ... – RoboticRenaissance
감사합니다. 그게 내가 필요한 것입니다. 다음 번에는 답안에 그런 정보를 넣어야합니다. 나는 그것을 시험하자마자 그것을 받아 들였을 것이다. – RoboticRenaissance