0
수행 할 작업은 다음과 같습니다. 나는 역순으로 쓰고 5 개의 다른 문자열을 형성하기 위해 단어를 무작위로 추출해야하는 문자열을 얻는다. 나는 문자열을 역순으로 쓰고 단어를 무작위로 추출하려고했지만 5 회는 할 수 없다. 여기에 코드가 있습니다.여러 번 복제하지 않고 무작위 화하기
var x = "Lorem ipsum dolor sit amet";
var wordsArray = x.split(" ");
function wordsReverse(allWords){
var otherArray = [];
for (var i = allWords.length-1; i >= 0; i--) {
otherArray.push(allWords[i]);
}
return otherArray;
}
function createRandomText(text){
var randomArray = [];
var randomText = null;
for (var j = 0; j < 5; j++) {
for (var k = 0; k < text.length; k++) {
randomText = text[Math.floor(Math.random()*text.length)];
if (text[randomText] === undefined) {
randomArray.push(randomText);
text[randomText] = true;
}
}
}
return randomArray;
}
console.log(wordsReverse(wordsArray).toString().replace(/\,/g, ' '))
console.log(createRandomText(wordsArray).toString().replace(/\,/g, ' '))
감사합니다.
왜 '.join (' ')'대신에 .toString(). replace (/ \,/g,' '))'를 쓰고 있습니까? 배열 할 때마다, 그래서 아무것도 남아 있지 않습니다. 따라서 배열을 먼저 복제하고이를 처리하는 것이 좋습니다. 또는 사용한 것을 저장하기 위해 객체 리터럴을 생성하십시오. – Keith