2013-04-15 7 views
6

मैं नई फ़ाइल API का उपयोग करके इनपुट फ़ाइलों को सॉर्ट करने का प्रयास कर रहा हूं। सूची है कि यह देता है अपरिवर्तनीय हो रहा है:फ़ाइलसूची ऑब्जेक्ट को सॉर्ट करना

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

सेंट! धन्यवाद। –

+2

ईएस 6 में एक नई विधि विशेष रूप से इस कारण से [Array.from] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/from) है। लिखने की तारीख के अनुसार यह केवल फ़ायरफ़ॉक्स 32 और उच्चतर द्वारा कार्यान्वित किया गया है। –

+2

ईएस 6 स्प्रेड ऑपरेटर का उपयोग करना एक और विकल्प है: फाइलें = [... e.target.files] .sort(); – jul

संबंधित मुद्दे