diff --git a/index.html b/index.html index eb393d56..5e03237e 100644 --- a/index.html +++ b/index.html @@ -39,25 +39,25 @@
// Parse CSV string
- var data = Papa.parse(csv);
-
- // Convert back to CSV
- var csv = Papa.unparse(data);
-
- // Parse local CSV file
- Papa.parse(file, {
- complete: function(results) {
- console.log("Finished:", results.data);
- }
- });
-
- // Stream big file in worker thread
- Papa.parse(bigFile, {
- worker: true,
- step: function(results) {
- console.log("Row:", results.data);
- }
- });
+var data = Papa.parse(csv);
+
+// Convert back to CSV
+var csv = Papa.unparse(data);
+
+// Parse local CSV file
+Papa.parse(file, {
+ complete: function(results) {
+ console.log("Finished:", results.data);
+ }
+});
+
+// Stream big file in worker thread
+Papa.parse(bigFile, {
+ worker: true,
+ step: function(results) {
+ console.log("Row:", results.data);
+ }
+});
String.split(',')
?"Heavens, no. Papa does it right. Just pass in the CSV string with an optional configuration.
var results = Papa.parse(csvString, config);
- /*
- results = {
- data: [ ... ], // parsed data
- errors: [ ... ], // errors encountered
- meta: { ... } // extra parse info
- }
- */
+/*
+ results = {
+ data: [ ... ], // parsed data
+ errors: [ ... ], // errors encountered
+ meta: { ... } // extra parse info
+ }
+*/
@@ -234,8 +234,8 @@ That's okay. Papa will scan the first few rows to find the right delimiter.
var results = Papa.parse(csvString);
- console.log(results.meta.delimiter);
- // "\t"
+console.log(results.meta.delimiter);
+// "\t"
@@ -251,10 +251,10 @@ Then give Papa a File instead of a string. Since file parsing is asynchronous, don't forget a callback.
var results = Papa.parse(fileInput.files[0], {
- complete: function(results) {
- console.log(results);
- }
- });
+ complete: function(results) {
+ console.log(results);
+ }
+});
@@ -272,11 +272,11 @@ Oh, well then just pass in the URL and—of course—a callback.
Papa.parse("http://example.com/file.csv", {
- download: true,
- complete: function(results) {
- console.log(results);
- }
- });
+ download: true,
+ complete: function(results) {
+ console.log(results);
+ }
+});
@@ -296,14 +296,14 @@ That's what streaming is for. Specify a step callback to receive the results row-by-row. This way, you won't load the whole file into memory and crash the browser.
Papa.parse("http://example.com/big.csv", {
- download: true,
- step: function(row) {
- console.log("Row:", row.data);
- },
- complete: function() {
- console.log("All done!");
- }
- });
+ download: true,
+ step: function(row) {
+ console.log("Row:", row.data);
+ },
+ complete: function() {
+ console.log("All done!");
+ }
+});
@@ -319,14 +319,14 @@ That happens when a long-running script is executing in the same thread as the page. Use a Worker thread by specifying worker: true
. It may take slightly longer, but your page will stay reactive.
Papa.parse(bigFile, {
- worker: true,
- step: function(row) {
- console.log("Row:", row.data);
- },
- complete: function() {
- console.log("All done!");
- }
- });
+ worker: true,
+ step: function(row) {
+ console.log("Row:", row.data);
+ },
+ complete: function() {
+ console.log("All done!");
+ }
+});
@@ -343,9 +343,9 @@ If you tell Papa there is a header row, each row will be organized by field name instead of index.
// Key data by field name instead of index/position
- var results = Papa.parse(csv, {
- header: true
- });
+var results = Papa.parse(csv, {
+ header: true
+});
@@ -362,9 +362,9 @@ Everything is parsed as strings. If you want numbers and booleans, you can enable dynamic typing to do the conversion for you.
// Converts numeric/boolean data
- var results = Papa.parse(csv, {
- dynamicTyping: true
- });
+var results = Papa.parse(csv, {
+ dynamicTyping: true
+});
@@ -383,10 +383,10 @@ Okay, first off: that's really weird. But fortunately, you can skip those lines... just specify the comment string.
// Mostly found in academia, some CSV files
- // may have commented lines in them
- var results = Papa.parse(csv, {
- comments: "#"
- });
+// may have commented lines in them
+var results = Papa.parse(csv, {
+ comments: "#"
+});
@@ -404,12 +404,12 @@ Papa handles errors pretty well. The CSV standard is somewhat loose ambiguous, so Papa is designed for edge cases. For example, mismatched fields won't break parsing.
// Example error:
- {
- type: "FieldMismatch",
- code: "TooManyFields",
- message: "Expected 3 fields, but parsed 4",
- row: 1
- }
+{
+ type: "FieldMismatch",
+ code: "TooManyFields",
+ message: "Expected 3 fields, but parsed 4",
+ row: 1
+}
@@ -426,15 +426,15 @@ Sure, but it's not required. You can use jQuery to select file input elements and then parse their files. Papa exposes its file parsing API as a jQuery plugin only when jQuery is defined. Papa Parse has no dependencies.
$("input[type=file]").parse({
- config: {
- complete: function(results, file) {
- console.log("This file done:", file, results);
- }
- },
- complete: function() {
- console.log("All files done!");
+ config: {
+ complete: function(results, file) {
+ console.log("This file done:", file, results);
}
- });
+ },
+ complete: function() {
+ console.log("All files done!");
+ }
+});
@@ -451,8 +451,8 @@ Call unparse()
instead of parse()
, passing in your array of arrays or array of objects. Papa will figure it out.
// Output is a properly-formatted CSV string.
- // See the docs for more configurability.
- var csv = Papa.unparse(yourData);
+// See the docs for more configurability.
+var csv = Papa.unparse(yourData);