58 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			58 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|  | # outputJson(file, object, [options, callback])
 | ||
|  | 
 | ||
|  | Almost the same as [`writeJson`](writeJson.md), except that if the directory does not exist, it's created. | ||
|  | 
 | ||
|  | **Alias:** `outputJSON()` | ||
|  | 
 | ||
|  | - `file` `<String>` | ||
|  | - `object` `<Object>` | ||
|  | - `options` `<Object>` | ||
|  |   - `spaces` `<Number|String>` Number of spaces to indent; or a string to use for indentation (i.e. pass `'\t'` for tab indentation). See [the docs](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify#The_space_argument) for more info. | ||
|  |   - `EOL` `<String>` Set EOL character. Default is `\n`. | ||
|  |   - `replacer` [JSON replacer](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify#The_replacer_parameter) | ||
|  |   - Also accepts [`fs.writeFile` options](https://nodejs.org/api/fs.html#fs_fs_writefile_file_data_options_callback) | ||
|  | - `callback` `<Function>` | ||
|  | 
 | ||
|  | ## Example:
 | ||
|  | 
 | ||
|  | ```js | ||
|  | const fs = require('fs-extra') | ||
|  | 
 | ||
|  | const file = '/tmp/this/path/does/not/exist/file.json' | ||
|  | 
 | ||
|  | // With a callback: | ||
|  | fs.outputJson(file, {name: 'JP'}, err => { | ||
|  |   console.log(err) // => null | ||
|  | 
 | ||
|  |   fs.readJson(file, (err, data) => { | ||
|  |     if (err) return console.error(err) | ||
|  |     console.log(data.name) // => JP | ||
|  |   }) | ||
|  | }) | ||
|  | 
 | ||
|  | // With Promises: | ||
|  | fs.outputJson(file, {name: 'JP'}) | ||
|  | .then(() => fs.readJson(file)) | ||
|  | .then(data => { | ||
|  |   console.log(data.name) // => JP | ||
|  | }) | ||
|  | .catch(err => { | ||
|  |   console.error(err) | ||
|  | }) | ||
|  | 
 | ||
|  | // With async/await: | ||
|  | async function example (f) { | ||
|  |   try { | ||
|  |     await fs.outputJson(f, {name: 'JP'}) | ||
|  | 
 | ||
|  |     const data = await fs.readJson(f) | ||
|  | 
 | ||
|  |     console.log(data.name) // => JP | ||
|  |   } catch (err) { | ||
|  |     console.error(err) | ||
|  |   } | ||
|  | } | ||
|  | 
 | ||
|  | example(file) | ||
|  | ``` |