Security News
Opengrep Emerges as Open Source Alternative Amid Semgrep Licensing Controversy
Opengrep forks Semgrep to preserve open source SAST in response to controversial licensing changes.
json-truncate
Advanced tools
A way to truncate a json object. Useful for circular referenced objects.
If you need to write data to a file or output an object to an api endpoint that has circular references I recommend you give json-truncate
a try.
By removing deeply nested data to maintain simple copies of the circular references you can keep most of the data you might be interested in.
npm install json-truncate --save
Below are examples of how to use json-truncate
You can include with regular node require:
JSON.truncate = require('json-truncate')
Figure 1.0 - A basic example with default options.
JSON.truncate(SomeDeepObject)
Figure 1.1 - An example of setting the maxDepth
property.
JSON.truncate(SomeDeepObject, 5)
Figure 1.2 - An example of all configurable options.
console.log(JSON.truncate({
data: 'foo',
level1: {
data: 'bar',
level2: {
level3: {}
}
}
}, {
maxDepth: 2,
replace: '[Truncated]'
}))
/**
* Output:
{
"data": "foo",
"level1": {
"data": "bar",
"level2": "[Truncated]"
}
}
**/
By default, there are two configurable variables to keep in mind when using json-truncate
:
maxDepth (Number)
= 10
replace (Any)
= undefined
If you would you can configure these either individually with each request, or globally with the configuration function. The following example mimics figure 1.2 above.
JSON.truncate.configure({
maxDepth: 2,
replace: '[Truncated]'
})
obj
- The Object that will be truncated.options
- (optional) An option object to customize the behavior of the utility. Defaults to {}
.Current Option Properties
Option | Description |
---|---|
maxDepth | The default maxDepth to use for nested and deep properties on an object. Defaults to 10 |
:-- | :-- |
replace | A string value that is used to replace all truncated values. If this value is not a string then all truncated values will be replaced with undefined |
MIT
FAQs
A way to truncate a json object.
We found that json-truncate demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Opengrep forks Semgrep to preserve open source SAST in response to controversial licensing changes.
Security News
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
Security News
cURL and Go security teams are publicly rejecting CVSS as flawed for assessing vulnerabilities and are calling for more accurate, context-aware approaches.