나는 많은 값을 생성하고 고유 한 것들만 사용해야하는 문제가 있습니다. --harmony 플래그가있는 노드 js를 사용하고 있으며 조화 컬렉션에 액세스 할 수 있으므로 Set이 옵션 일 수 있다고 결정했습니다. 뿐만 아니라,집합에 대한 사용자 정의 객체 평등 (es6)
'use strict';
function Piece(x,y){
this.x = x
this.y = y
}
function Board(width,height,pieces){
this.width = width
this.height = height
this.pieces = pieces
}
function generatePieces(){
return [
new Piece(0,0),
new Piece(1,1)
]
}
//boardA and boardB are two different but equivalent boards
var boardA = new Board(10,10,generatePieces())
var boardB = new Board(10,10,generatePieces())
var boards = new Set()
boards.add(boardA)
boards.has(boardB) //return true
이제
일반적으로 다른 언어로이를 달성하기 위해, C#을 말, 내가이 기능을 동일 구현해야 기대 : 내가 무엇을 찾고
은 다음 예제와 유사 뭔가 Board와 Piece 모두를위한 해시 코드 생성 함수로서. 이후 기본 객체 평등이 참조를 기반으로 할 것으로 기대합니다. 또는 특수 불변 값 유형 (예 : 스칼라의 사례 클래스)을 사용하십시오.
내 개체를 평등하게 정의하여 내 문제를 해결할 수있는 방법이 있습니까?
감사합니다. 나는 이것이 사실이라고 느꼈다. 토론에 대한 링크는 매우 유용합니다. –