
Product
Socket MCP Adds Org Alerts, Threat Feed Review, and Package Inspection
Socket MCP now lets AI assistants review org alerts, investigate threats using the Socket threat feed, and inspect package files in addition to dependency scoring.
randomjson
Advanced tools
Generate random json according to condition json
npm install randomjson
Or direct reference to the output file: <script src = "dist.js"> </ script>
// In the amd, cmd environment, reference packages are not required in the browser
var randomjson = require('randomjson');
var modelJson = {
"code": "00",
"numberCode": "<@[10000,20000]>",
"msg2": "<@string{2,3}>",
"logo": "<@image{100,100}>",
"result": {
"pList<@{1,3}>":[
{
"indexToString": "<@index><@>",
"index": "<@index>",
"id": "<@[1-5]>",
"price": "<@float>",
"name": "name<@index>",
"person": "person<@index>",
"address": "California NO.<@index>",
"mobile": "1<@number{10}>",
"tel": "<@number{4}>-<@number{8}>",
"list": [
{
"auditKey": 1,
"auditValue": "<@[0,1,2]>"
},
{
"auditKey": 2,
"auditValue": "<@[0,1,2]>"
}
]
}
]
}
}
var myJson = randomjson(modelJson);
The value of myJson might be:
{
"code": "00",
"numberCode": 20000,
"msg2": "hrj",
"logo": "https://dummyimage.com/100x100",
"result": {
"pList": [
{
"indexToString": "1",
"index": 1,
"id": 2,
"price": 37.49,
"name": "name1",
"person": "person1",
"address": "California NO.1",
"mobile": "18737211377",
"tel": "2526-64023718",
"list": [
{
"auditKey": 1,
"auditValue": 1
},
{
"auditKey": 2,
"auditValue": 2
}
]
}
]
}
}
npm install -g webpack
webpack --entry ./index.js --output-path dist --output-filename dist.js --output-library randomjson --output-library-target umd
Starting with <@, ending with>, the middle content is randomjson's lexical
"<@number>": the data type is number
"<@string>": the data type is string
"<@null>": the data type is null
"<@boolean>": the data type is boolean
"<@chinese>": chinese string
"<@float {number1, number2}>": Floating point number1 represents the integer number of digits, number2 represents the number of decimal places, defaults to 2
"<@image {width, height}>": Generate the picture width to generate the image width, height to generate the picture height, the default is 400,400
"<@index>": The position of the element in the array, starting at 1
{minNumber, maxNumber}: At least minNumber, up to maxNumber
{minNumber,}: At least minNumber
{number}: A total of number
If it is float, minNumber, maxNumber represents the number of bits of integer and fractional parts
If it is imgae, minNumber, maxNumber represents the picture width height
You can use "|" to separate multiple options, the random value is one of the values for the string
[1, 2, 3] represents one of 1, 2, and 3, and the value is a number [1-90] represents an int value from 1 to 90, and the value is a number
[1.00-3.00] represents 2 decimal places between 1 and 3
Place the placeholder after the number type
The following are the same as the
"IndexToString": "<@index> <@>"
Non-array, the length of the value string, for example: "ret": "<@number {4}>"
When the value is an array, the length is in the key, for example:
"P11<@{2,5}>": [{
"P8": "12312",
"P9": ["<@string{4,7}>"],
"P10": "<@string>"
}]
根据条件json生成随机json
npm install randomjson
或者直接引用产出文件:
// 在amd,cmd环境中,引用包,在浏览器中无需引用
var randomjson = require('randomjson');
// 模型
var modelJson = {
"code": "00",
"numberCode": "<@[10000,20000]>",
"msg": "<@chinese{12,50}>",
"msg2": "<@string{2,3}>",
"logo": "<@image{100,100}>",
"result": {
"pList<@{1,3}>":[
{
"indexToString": "<@index><@>",
"index": "<@index>",
"id": "<@[1-5]>",
"price": "<@float>",
"name": "公司名称<@index>",
"person": "李文武<@index>",
"address": "北京市海淀区西三旗",
"mobile": "1<@number{10}>",
"tel": "<@number{4}>-<@number{8}>",
"list": [
{
"auditKey": 1,
"auditValue": "<@[0,1,2]>"
},
{
"auditKey": 2,
"auditValue": "<@[0,1,2]>"
}
]
}
]
}
}
// 根据模型生成json
var myJson = randomjson(modelJson);
根据上边模型生成的json可能是这样:
{
"code": "00",
"numberCode": 10000,
"msg": "加义为边平压你治提用根治问求只或程干立农资特",
"msg2": "dv",
"logo": "https://dummyimage.com/100x100",
"result": {
"pList": [
{
"indexToString": "1",
"index": 1,
"id": 2,
"price": 93.78,
"name": "公司名称1",
"person": "李文武1",
"address": "北京市海淀区西三旗",
"mobile": "17929438781",
"tel": "1148-56055642",
"list": [
{
"auditKey": 1,
"auditValue": 0
},
{
"auditKey": 2,
"auditValue": 1
}
]
},
{
"indexToString": "2",
"index": 2,
"id": 5,
"price": 29.49,
"name": "公司名称2",
"person": "李文武2",
"address": "北京市海淀区西三旗",
"mobile": "17826945504",
"tel": "7298-46226026",
"list": [
{
"auditKey": 1,
"auditValue": 0
},
{
"auditKey": 2,
"auditValue": 0
}
]
}
]
}
}
npm install -g webpack
webpack --entry ./index.js --output-path dist --output-filename dist.js --output-library randomjson --output-library-target umd
以<@开始,以>结束,中间内容是randomjson的词法
"<@number>": number类型
"<@string>": string类型
"<@null>": null
"<@boolean>": boolean类型
"<@chinese>": 中文字符串
"<@float{number1,number2}>": 浮点数 number1代表整数位数,number2代表小数位数,默认都为2
"<@image{width,height}>": 生成图片 width为生成图片宽度,height为生成图片高度,默认为400,400
"<@index>": 元素在数组中的位置,从1开始
{minNumber, maxNumber}: minNumber到maxNumber个
{minNumber,}: 最少minNumber
{number}: number个
如果是float,minNumber, maxNumber表示整数部分和小数部分的位数
如果是imgae,minNumber, maxNumber表示图片宽度高度
你可以使用“|” 分离多个选项,随机值是其中之一,值为字符串
[1,2,3] 表示1,2,3中的一个,值为数字
[1-90] 表示1到90中的一个int值,值为数字
[1.00-3.00] 表示1到3之间的2位小数
在number类型后加空的占位符 "indexToString": "<@index><@>"
值为非数组时,长度在value字符串里,例如:"ret": "<@number{4}>"
值为数组时,长度在key里,例如:
"p11<@{2,5}>": [{
"p8": "12312",
"p9": ["<@string{4,7}>"],
"p10": "<@string>"
}]
FAQs
Generate random json according to condition json
The npm package randomjson receives a total of 24 weekly downloads. As such, randomjson popularity was classified as not popular.
We found that randomjson 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.

Product
Socket MCP now lets AI assistants review org alerts, investigate threats using the Socket threat feed, and inspect package files in addition to dependency scoring.

Product
Socket Firewall blocks malicious VS Code and Open VSX extensions before install, protecting developers from compromised editor marketplaces.

Research
More than 140 Mastra npm packages were compromised in a supply chain attack that used a typosquatted dependency to deliver a cross-platform infostealer during installation.