イメージ名に基づいて Image オブジェクトの配列をソートする単純なバブルソート関数を作成しました。何らかの理由で、必要に応じて関数が配列の要素を交換していません(基本的に新しい割り当ては機能していません)
これが私のコードです:
listOfFiles = event.dataTransfer.files;
sortImages(listOfFiles);
function sortImages(listOfFiles)
{
var re = /[0-9]/;
var temp;
for( var index=0; index < listOfFiles.length ; index++)
{
for ( var index2=0; index2 < listOfFiles.length-1 ; index2++)
{
var one = parseFloat(re.exec(listOfFiles[index2].name ));
var two = parseFloat(re.exec(listOfFiles[index2+1].name));
console.log(one + " : " + two);
if (one > two)
{
console.log(listOfFiles[index2+1]);
console.log(listOfFiles[index2]);
//following three lines don't work
temp = listOfFiles[index2+1];
listOfFiles[index2+1] = listOfFiles[index2];
listOfFiles[index2] = temp;
console.log(listOfFiles[index2+1]);
console.log(listOfFiles[index2]);
}
}
}
}