클라이언트 측에서 고유 ID를 원한다고 가정하고 프론트/백엔드 간의 일관성 메커니즘으로 사용하지 않을 것입니다. 마찬가지로, 페이지가로드 될 때마다 이러한 ID는 동일해야합니다. 내 추가는 클라이언트 측 독창성을위한 것입니다. 당신이 절대적으로 (좋은) 고유 ID를 갖고 싶어, 당신에게 독특한 무언가를 포기하지 않을 docimages의 기회를하지 않으려면
function displayImage(whichImage) {
if (whichImage !== "noImage") {
document.canvas.src = whichImage;
} else {
// you can increment via document.images or just randomize a numb.
var docimages = document.images.length || Math.floor(Math.random()*999999);
document.canvas.src = "image2.jpg";
document.canvas.id = 'image' + docimages;
}
}
. 해시를 생성하고, id를 생성했는지 아닌지 확인하기 위해 테스트하는 콜백 함수 - 무작위 화하고 추가합니다. 그럴 경우 다시 랜덤 화하고 다시 확인하십시오. 또는 ID를 할당하기 전에 길이가있는 경우 문서의 ID에 대해 테스트하십시오. 그렇지 않다면 ID에 추가하십시오. 존재하는 경우 다시 정리하십시오.
이 이미지는 데이터베이스에서 가져옵니다. 이미지 수에는 제한이 없습니다. – nlm
증가 카운터가 트릭을 수행 할 수 있습니다. (내부적으로 간단한 indexOf로지도를 처리). – GameAlchemist
Off-topic : 코드를'document.canvas.src = whichImage! == "noImage"로 단순화 할 수 있습니까? whichImage : "image2.jpg"' – Oriol