
Research
Node.js Fixes AsyncLocalStorage Crash Bug That Could Take Down Production Servers
Node.js patched a crash bug where AsyncLocalStorage could cause stack overflows to bypass error handlers and terminate production servers.
A json tool kit for Node.js. Well, did you find that sometimes console tell you there was certain key is undefined when you want to get or set a json node? if the json object has four level, should I judge it four times? And there are same situations for Create Delete and some other operation. So, all this can be solved by jSing module simply.
you can use npm to install this by
npm install jsing
var jsing = require("jsing");
var empty = {};
// create a json node key:hello value:jsing
jsing.create(empty, "hello", "jsing");
// format output this json object
jsing.print_r(empty);
var json = require("jsing");
var data = {
0: 120,
OK: 200,
FAIL: 500,
ENTRY: {
FA_TOKEN_INVALID: 1001,
FA_TOKEN_EXPIRE: 1002,
FA_USER_NOT_EXIST: 1003
},
GATE: {
FA_NO_SERVER_AVAILABLE: 2001
},
CHAT: {
FA_CHANNEL_CREATE: 3001,
FA_CHANNEL_NOT_EXIST: 3002,
FA_UNKNOWN_CONNECTOR: 3003,
FA_USER_NOT_ONLINE: 3004
}
};
console.log("Get the node of Json object");
console.log(jsing.get(data, 0)); // 120
console.log(jsing.get(data, "OK")); // 200
console.log(jsing.get(data, "ENTRY", "FA_TOKEN_INVALID")); // 1001
console.log(jsing.get(data, "TEST", "NOT_EXIST")); // false the node
console.log("Set the node of Json object");
console.log(jsing.set(data, "ENTRY", "FA_TOKEN_INVALID", 1234)); // true
console.log(jsing.get(data, "ENTRY", "FA_TOKEN_INVALID")); // 1234
console.log(jsing.set(data, "ENTRY", "NOT_EXIST", 1234)); // false
var prods = {
'name': 'Alan',
'grade': {
'Chinese': 120,
'math': 130,
'competition': {
'NOI': 'First prize'
}
}
};
console.log("Create new Json node");
console.log(jsing.create(prods, 'create', 'hello', 'test', 120)); // true
console.log(jsing.create(prods, 'create', 'hello', 'test2', 'PASS')); // true
console.log("format output");
jsing.print_r(prods);
console.log("Delete the node of Json object");
console.log(jsing.delete(prods, 'grade', 'math')); // true
console.log(jsing.delete(prods, 'grade', 'competition')); // true
console.log(jsing.delete(prods, 'grade', 'NODE_NOT_EXIST')); // false
jsing.print_r(prods);
var empty = {};
jsing.push(empty, "hello", {name:"alan"}); jsing.push(empty, "hello", {name:"Bob"});
jsing.push(empty, 123); jsing.push(empty, 456); jsing.push(empty, 789);
jsing.push(empty, {"name": "Alan"}); jsing.push(empty, {"name": "Bob"});
console.log(jsing.pop(empty)); console.log(jsing.pop(empty)); console.log(jsing.pop(empty));
console.log(jsing.pop(empty)); console.log(jsing.pop(empty, "hello")); console.log(jsing.pop(empty, "hello"));
jsing.print_r(empty);
(Chinese support)
json对象的操作工具集,使用递归实现,可操作复杂的节点。json 数组以及排序将是下一个版本的重点。
使用NPM即可安装
npm install jsing
FAQs
A json tool kit for node.js
The npm package jsing receives a total of 2 weekly downloads. As such, jsing popularity was classified as not popular.
We found that jsing 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.

Research
Node.js patched a crash bug where AsyncLocalStorage could cause stack overflows to bypass error handlers and terminate production servers.

Research
/Security News
A malicious Chrome extension steals newly created MEXC API keys, exfiltrates them to Telegram, and enables full account takeover with trading and withdrawal rights.

Security News
CVE disclosures hit a record 48,185 in 2025, driven largely by vulnerabilities in third-party WordPress plugins.