私はかなり単純なことをしようとしていますが、私のコードはひどく見えます.javascriptで物事を行うためのより良い方法があると確信しています. 私は JavaScript が初めてで、コーディングを改善しようとしています。これは非常に面倒です。
私がやりたいのは、Web ページ上のいくつかの単語の順序をランダムに変更することだけです。Python では、コードは次のようになります。
s = 'THis is a sentence'
shuffledSentence = random.shuffle(s.split(' ')).join(' ')
ただし、これは私がjavascriptで作成した怪物です
//need custom sorting function because javascript doesn't have shuffle?
function mySort(a,b) {
return a.sortValue - b.sortValue;
}
function scrambleWords() {
var content = $.trim($(this).contents().text());
splitContent = content.split(' ');
//need to create a temporary array of objects to make sorting easier
var tempArray = new Array(splitContent.length);
for (var i = 0; i < splitContent.length; i++) {
//create an object that can be assigned a random number for sorting
var tmpObj = new Object();
tmpObj.sortValue = Math.random();
tmpObj.string = splitContent[i];
tempArray[i] = tmpObj;
}
tempArray.sort(mySort);
//copy the strings back to the original array
for (i = 0; i < splitContent.length; i++) {
splitContent[i] = tempArray[i].string;
}
content = splitContent.join(' ');
//the result
$(this).text(content);
}
物事を単純化するのを手伝ってもらえますか?