JSON (JavaScript Object Notation) is a lightweight data format that has become standard for representing data structures in JavaScript. It can represent either arrays or objects (key-value pairs). JavaScript provides JSON.stringify() to encode objects to JSON strings and JSON.parse() to decode JSON strings back to objects. Valid JSON must follow specific formatting rules like using double quotes for object property names and only allowing specific data types. Node.js provides the fs module to read and write JSON files by parsing/stringifying objects and reading/writing files.