2013-04-15 24 views
6

新しいFile APIを使用して入力ファイルをソートしようとしています。FileListオブジェクトをソートする

var x = ""; 
var files = e.target.files; // FileList object 
// Loop through the FileList and render image files as thumbnails. 

files.sort(); 

> Uncaught TypeError: Object #<FileList> has no method 'sort' 

私は一度に複数のファイルに読みたい場合は、私は彼らが順番に到着したい:それは返すリストは不変であるように思われます。 (A.csvB.csvなどの前に処理されます)。これは達成可能ですか?

答えて

11

[].slice.call(files)実際の配列にするには、.sortを使用します。

+1

Saint!ありがとうございました。 –

+2

ES6の新しい方法は、この理由から[Array.from](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/from)です。執筆時点では、Firefox 32以降でのみ実装されています。 –

+2

ES6スプレッド演算子を使用することもできます。 let files = [... e.target.files] .sort(); – jul

関連する問題