Converts an arbitrary value to a JSON string representation.
Objects with cyclical references will trigger an exception.
If a whitelist is provided, only matching object keys will be * included. Alternately, a replacer function may be passed as the * second parameter. This function is executed on every value in the * input, and its return value will be used in place of the original value. * This is useful to serialize specialized objects or class instances.
If a positive integer or non-empty string is passed as the third * parameter, the output will be formatted with carriage returns and * indentation for readability. If a String is passed (such as "\t") it * will be used once for each indentation level. If a number is passed, * that number of spaces will be used.
Number of occurrences of a special character within a single call to * stringify that should trigger promotion of that character to a dedicated * preprocess step for future calls. This is only used in environments * that don't support native JSON, or when useNativeJSONStringify is set to * false.
So, if set to 50 and an object is passed to stringify that includes * strings containing the special character \x07 more than 50 times, * subsequent calls to stringify will process object strings through a * faster serialization path for \x07 before using the generic, slower, * replacement process for all special characters.
To prime the preprocessor cache, set this value to 1, then call * Y.JSON.stringify("(all special characters to * cache)");, then return this setting to a more conservative * value.
Y.JSON.stringify("(all special characters to * cache)");
Special characters \ " \b \t \n \f \r are already cached.