It is good programming practice to return an empty array []
if the expected return type is an array. This makes sure that the receiver of the json can treat the value as an array immediately without having to first check for null. It’s the same way with empty objects using open-closed braces {}
.
Strings, Booleans and integers do not have an ’empty’ form, so there it is okay to use null values.
This is also addressed in Joshua Blochs excellent book “Effective Java”. There he describes some very good generic programming practices (often applicable to other programming langages as well). Returning empty collections instead of nulls is one of them.
Here’s a link to that part of his book:
http://jtechies.blogspot.nl/2012/07/item-43-return-empty-arrays-or.html
Related Posts:
- “SyntaxError: Unexpected token < in JSON at position 0"
- SyntaxError: Unexpected token o in JSON at position 1
- SyntaxError: Unexpected token o in JSON at position 1
- What is JSONP, and why was it created?
- TypeError: Converting circular structure to JSON in nodejs
- Use a JSON array with objects with javascript
- Array of JSON Objects
- Chrome sendrequest error: TypeError: Converting circular structure to JSON
- Fetch: POST JSON data
- Uncaught SyntaxError: Unexpected token u in JSON at position 0
- Unexpected token u in JSON at position 0 (but only sometimes)
- How to read an external local JSON file in JavaScript?
- SyntaxError: Unexpected token o in JSON at position 1
- SyntaxError: Unexpected token o in JSON at position 1
- How to read an external local JSON file in JavaScript?
- What is the “right” JSON date format?
- Nested JSON objects – do I have to use arrays for everything?
- Uncaught TypeError: Cannot read property ‘length’ of undefined
- What is the “right” JSON date format?
- How to compare arrays in JavaScript?
- Failed to load resource: net::ERR_FILE_NOT_FOUND loading json.js
- jQuery AJAX cross domain
- SyntaxError: Unexpected token o in JSON at position 1
- Uncaught TypeError: Cannot read property ‘props’ of null
- Loading local JSON file
- How to convert JSON object to JavaScript array?
- node.js TypeError: path must be absolute or specify root to res.sendFile [failed to parse JSON]
- Uncaught TypeError: data.push is not a function
- React Js: Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0
- How to convert selected HTML to Json?
- How to get JSON from URL in JavaScript?
- How do you put an image file in a json object?
- push object into array
- JSON.parse() not working
- react router v^4.0.0 Uncaught TypeError: Cannot read property ‘location’ of undefined
- Refused to execute script, strict MIME type checking is enabled?
- TypeError: res.json is not a function
- SyntaxError: Unexpected token C in JSON at position 0 – Ionic 2 Http GET request
- SyntaxError: JSON.parse: unexpected end of data at line 1 column 1 of the JSON data
- Add new attribute (element) to JSON object using JavaScript
- SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data
- How to display raw JSON data on a HTML page
- Convert array to JSON
- JSON.parse unexpected token s
- JSON.stringify (Javascript) and json.dumps (Python) not equivalent on a list?
- How to filter JSON Data in JavaScript or jQuery?
- How to add a button dynamically using jquery
- Using setTimeout on promise chain
- Complex JSON nesting of objects and arrays
- Uncaught SyntaxError: Unexpected token with JSON.parse
- How can JavaScript save to a local file?
- Write / add data in JSON file using Node.js
- How do I handle newlines in JSON?
- Finding the max value of an attribute in an array of objects
- Defining a HTML template to append using JQuery
- “NS_ERROR_DOM_BAD_URI: Access to restricted URI denied”
- What are the differences between JSON and JSONP?
- Uncaught SyntaxError: Unexpected end of JSON input at JSON.parse (
) - WP Rest API – How to get featured image
- Implementing Isomorphic JavaScript (React JS) in WordPress?
- How to use wp_localize_script in custom page template?
- Dynamically insert values in a WordPress SelectControl Options field
- var is undefined in a Gutenberg block
- 404 Error Contact Form 7 on WordPress
- Base64 & JSON Encode array in PHP, use as HTML data attribute, decode and parse in JavaScript …. with proper Escaping
- AngularJS with route and JSON API
- Pass data from wordpress to javascript in JSON
- How to include a JSON file on my page?
- Why WordPress not using JSON_UNESCAPED_UNICODE by default?
- how to use nimble-API and Display data?
- Remove escape characters from JSON string pulled from a database
- I would like to retrive JSON value and display it in wordpress page or widget
- Connecting a wordpress site to an AngularJS APP
- Gutenberg core/file add style support in js/ json
- map function for objects (instead of arrays)
- “document.getElementByClass is not a function”
- How to find the sum of an array of numbers
- HTML5 Local storage vs. Session storage
- Expressjs / Node.js – res.redirect() not loading page
- Using async/await with a forEach loop
- What is the difference between null and undefined in JavaScript?
- document.getElementById(id).focus() is not working for firefox or chrome
- How to get height of div in px dimension
- Only on Firefox “Loading failed for the script with source”
- How do you use a variable in a regular expression?
- Find a value in an array of objects in Javascript [duplicate]
- How to handle malformed response from WP REST API?
- Modals using loops and ACF [closed]
- Changes to JS not reflected on site
- js addclass function not working as expected, intereaction or special WP somethign needed?
- Get a default value of the Customizer setting using wp.customize API (JS)
- Load external javascript files
- Javascript alert appears before tag
- Bootstrap bundle present in page source but not working
- Web cover page open when button clicked
- How to pass data to javascript in custom widget class
- Javascript not working on index.php but it is working on single post’s page
- Unable to change the location of a file
- WP REST API – “rest_user_cannot_view” ONLY on specific users
- How to add a new attribute to core wp block editor without npm?