이 루프를 이해할 수없는 것 같습니다.이 JavaScript 임의 번호 생성기는 어떻게 작동합니까?
for (i = 1; i < 50; i++) {
rand = Math.ceil(Math.random() * 49);
temp = nums[i];
nums[i] = nums[rand];
nums[rand] = temp;
}
큰 코드의 일부입니다. nums[i]
은 각각의 색인 번호로 채워진 1-49의 배열이며,이 for
루프를 통해 실행되고 난수로 채워집니다.
왜 임시 변수가 만들어 지는지, nums[rand]=temp;
코드 줄이 어떻게 작동하는지, 어떻게 수행되는지, 그리고 var
키워드없이 초기화되지 않은 이유는 무엇입니까?
누군가이 루프가 어떻게 작동하는지 설명 할 수 있습니까?
솔루션과 상관없이 [naive random sort] (http://www.codinghorror.com/blog/2007/12/the-danger-of-naivete.html)이며 실제로는 무작위가 아닙니다. 당신이 생각하기에 그렇습니다. – Gareth
var vs no var -> http://stackoverflow.com/questions/1470488/difference-between-using-var-and-not-using-var-in-javascript – ManseUK