📜  json exclude null - Javascript (1)

📅  最后修改于: 2023-12-03 15:17:04.283000             🧑  作者: Mango

JSON Exclude Null in JavaScript

When working with JSON data, it's common to come across null values. These represent the absence of a value for a given key. However, sometimes we don't want to include these values in our data or we may want to filter them out. In this article, we'll explore how to exclude null values from JSON data in JavaScript.

Filtering Null Values with JavaScript

We can filter out null values from our JSON data using the Array.filter() method in JavaScript. This method creates a new array with all elements that pass the test implemented by the provided function. We can use this functionality to filter out any null values in our data.

Example
const data = {
  name: 'John',
  age: 25,
  address: null,
  email: 'john@example.com',
}

const filteredData = Object.entries(data)
  .filter(([key, value]) => value !== null)
  .reduce((acc, [key, value]) => ({ ...acc, [key]: value }), {});

console.log(filteredData); // { name: 'John', age: 25, email: 'john@example.com'}

In this example, we first declare an object (data) with some key/value pairs that includes a null value. We filter out that null value using the Object.entries() method to convert our object into an array, and then filter based on the value. We use the reduce() method afterward to convert our filtered data back into an object.

Using JSON.parse() to Filter Null Values

Another way to filter out null values is by using JSON.parse() in JavaScript. We can provide an optional second argument to the JSON.parse() method called a reviver function. This function maps values and keys while parsing the JSON string.

Example
const jsonString = '{ "name": "John", "age": 25, "address": null, "email": "john@example.com"}';

const filteredJson = JSON.parse(jsonString, (key, value) => {
  if (value !== null) {
    return value;
  }
});

console.log(filteredJson); // {name: 'John', age: 25, email: 'john@example.com'}

In this example, we declare a JSON string and parse it using JSON.parse(). We use a reviver function to filter out any null values during the parsing process. Our reviver function checks if value !== null, and if it's true, we return the value. If it's null, we don't return anything, effectively filtering it out.

Conclusion

Filtering out null values from JSON data can be accomplished in a few different ways in JavaScript. We can either use the Array.filter() method or the JSON.parse() method with a reviver function. Both of these methods allow us to clean up our data and remove any null values that may be present.