提交 b5f42bbd 编写于 作者: WebCoderT's avatar WebCoderT 🚴🏼

success

上级 5e3e4671
[
[
"A省",
"B省",
"C省",
"D省",
"E省",
"F省",
"G省",
"H省",
"I省",
"G省",
"K省",
"L省",
"M省",
"N省",
"O省",
"P省",
"Q省",
"R省",
"S省",
"T省",
"U省",
"V省",
"W省",
"X省",
"Y省",
"Z省"
],
[
"A市",
"B市",
"C市",
"D市",
"E市",
"F市",
"G市",
"H市",
"I市",
"G市",
"K市",
"L市",
"M市",
"N市",
"O市",
"P市",
"Q市",
"R市",
"S市",
"T市",
"U市",
"V市",
"W市",
"X市",
"Y市",
"Z市"
],
[
"A县",
"B县",
"C县",
"D县",
"E县",
"F县",
"G县",
"H县",
"I县",
"G县",
"K县",
"L县",
"M县",
"N县",
"O县",
"P县",
"Q县",
"R县",
"S县",
"T县",
"U县",
"V县",
"W县",
"X县",
"Y县",
"Z县"
],
[
"A镇",
"B镇",
"C镇",
"D镇",
"E镇",
"F镇",
"G镇",
"H镇",
"I镇",
"G镇",
"K镇",
"L镇",
"M镇",
"N镇",
"O镇",
"P镇",
"Q镇",
"R镇",
"S镇",
"T镇",
"U镇",
"V镇",
"W镇",
"X镇",
"Y镇",
"Z镇"
]
]
\ No newline at end of file
[
[
"赵",
"钱",
"孙",
"李",
"周",
"吴",
"郑",
"王",
"冯",
"陈",
"褚",
"卫",
"蒋",
"沈",
"韩",
"杨",
"朱",
"秦",
"尤",
"许",
"何",
"吕",
"施",
"张",
"孔",
"曹",
"严",
"华",
"金",
"魏",
"陶",
"姜",
"戚",
"谢",
"邹",
"喻",
"柏",
"水",
"窦",
"章",
"云",
"苏",
"潘",
"葛",
"奚",
"范",
"彭",
"郎",
"鲁",
"韦",
"昌",
"马",
"苗",
"凤",
"花",
"方",
"俞",
"任",
"袁",
"柳",
"酆",
"鲍",
"史",
"唐",
"费",
"廉",
"岑",
"薛",
"雷",
"贺",
"倪",
"汤",
"滕",
"殷",
"罗",
"毕",
"郝",
"邬",
"安",
"常",
"乐",
"于",
"时",
"傅",
"皮",
"卞",
"齐",
"康",
"伍",
"余",
"元",
"卜",
"顾",
"孟",
"平",
"黄",
"和",
"穆",
"萧",
"尹",
"姚",
"邵",
"湛",
"汪",
"祁",
"毛",
"禹",
"狄",
"米",
"贝",
"明",
"臧",
"计",
"伏",
"成",
"戴",
"谈",
"宋",
"茅",
"庞",
"熊",
"纪",
"舒",
"屈",
"项",
"祝",
"董",
"梁",
"杜",
"阮",
"蓝",
"闵",
"席",
"季",
"麻",
"强",
"贾",
"路",
"娄",
"危",
"江",
"童",
"颜",
"郭",
"梅",
"盛",
"林",
"刁",
"钟",
"徐",
"邱",
"骆",
"高",
"夏",
"蔡",
"田",
"樊",
"胡",
"凌",
"霍",
"虞",
"万",
"支",
"柯",
"昝",
"管",
"卢",
"莫",
"经",
"房",
"裘",
"缪",
"干",
"解",
"应",
"宗",
"丁",
"宣",
"贲",
"邓",
"郁",
"单",
"杭",
"洪",
"包",
"诸",
"左",
"石",
"崔",
"吉",
"钮",
"龚",
"程",
"嵇",
"邢",
"滑",
"裴",
"陆",
"荣",
"翁",
"荀",
"羊",
"於",
"惠",
"甄",
"曲",
"家",
"封",
"芮",
"羿",
"储",
"靳",
"汲",
"邴",
"糜",
"松",
"井",
"段",
"富",
"巫",
"乌",
"焦",
"巴",
"弓",
"牧",
"隗",
"山",
"谷",
"车",
"侯",
"宓",
"蓬",
"全",
"郗",
"班",
"仰",
"秋",
"仲",
"伊",
"宫",
"宁",
"仇",
"栾",
"暴",
"甘",
"钭",
"厉",
"戎",
"祖",
"武",
"符",
"刘",
"景",
"詹",
"束",
"龙",
"叶",
"幸",
"司",
"韶",
"郜",
"黎",
"蓟",
"薄",
"印",
"宿",
"白",
"怀",
"蒲",
"台",
"从",
"鄂",
"索",
"咸",
"籍",
"赖",
"卓",
"蔺",
"屠",
"蒙",
"池",
"乔",
"阴",
"欎",
"胥",
"能",
"苍",
"双",
"闻",
"莘",
"党",
"翟",
"谭",
"贡",
"劳",
"逄",
"姬",
"申",
"扶",
"堵",
"冉",
"宰",
"郦",
"雍",
"郤",
"璩",
"桑",
"桂",
"濮",
"牛",
"寿",
"通",
"边",
"扈",
"燕",
"冀",
"郏",
"浦",
"尚",
"农",
"温",
"别",
"庄",
"晏",
"柴",
"瞿",
"阎",
"充",
"慕",
"连",
"茹",
"习",
"宦",
"艾",
"鱼",
"容",
"向",
"古",
"易",
"慎",
"戈",
"廖",
"庾",
"终",
"暨",
"居",
"衡",
"步",
"都",
"耿",
"满",
"弘",
"匡",
"国",
"文",
"寇",
"广",
"禄",
"阙",
"东",
"殴",
"殳",
"沃",
"利",
"蔚",
"越",
"夔",
"隆",
"师",
"巩",
"厍",
"聂",
"晁",
"勾",
"敖",
"融",
"冷",
"訾",
"辛",
"阚",
"那",
"简",
"饶",
"空",
"曾",
"毋",
"沙",
"乜",
"养",
"鞠",
"须",
"丰",
"巢",
"关",
"蒯",
"相",
"查",
"后",
"荆",
"红"
],
[
"一",
"二",
"三",
"四",
"五",
"六",
"七",
"八",
"九",
"十"
]
]
\ No newline at end of file
[
[
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
],
[
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
]
]
\ No newline at end of file
*{
margin: 0;
padding: 0;
box-sizing: border-box;
}
body{
height: 100vh;
overflow: hidden;
}
body>div{
height: 100%;
width: 50vw;
float: left;
border: 2px solid #000;
text-align: center;
padding: 15px;
}
table{
border-collapse:collapse;
}
td,th{
border: 2px solid #000;
padding: 5px;
}
input,input:focus{
/*border: none;*/
outline: none;
/*width: 200px;*/
}
._configs_ ,._results_{
width: 50%;
margin: auto;
border: 3px solid #e8e8e8;
border-radius: 5px;
margin-top: 20px;
min-height: 50px;
}
._results_{
height: 80vh;
}
._configs_ input{
width: 50px;
}
._base_config_{
position: relative;
}
._matters_needing_attention_{
position: absolute;
text-align: left;
bottom: 0;
padding: 15px;
}
._matters_needing_attention_ h3{
color: red;
}
._matters_needing_attention_ span{
background-color: aqua;
color: crimson;
}
\ No newline at end of file
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>_Auto_Create_Json_Object_</title>
<link rel="stylesheet" href="./index.css">
</head>
<body>
<div>
<div id="_base_config_">
条数:
<input id="_Data_Number_" type="number">
<button id="_Create_Json_">
》》》生成 》》》
</button>
<p id="_base_config_list_">
<input id="_id" type="checkbox" name="_base_config_check_" value="id"/>编号(id)
<input id="_sex" type="checkbox" name="_base_config_check_" value="sex"/>年龄(sex)
<input id="_name" type="checkbox" name="_base_config_check_" value="name"/>人物姓名(name)
<input id="_address" type="checkbox" name="_base_config_check_" value="address"/>地址(address)
</p>
<div class="_matters_needing_attention_">
<h3>注:</h3>
<p>这个demo只是我自己工作中需要生成大量JSON格式文件来自己使用,只是为了方便自己!!!!。</p>
<p>请在编辑器内置服务器下打开,否则无法获取配置文件。</p>
<p>此案例仅限娱乐交流使用</p>
<p>如果需要添加其他字段,请将其 <span>.json文件</span> 放在 <span>_configs_</span> 文件下,并且在html中添加对应 <span>input</span> 即可。</p>
</div>
</div>
</div>
<div>
<p>↓↓↓↓↓↓↓↓数据生成↓↓↓↓↓↓↓↓</p>
<p>
<button id="_down_load_">下载</button>
</p>
<textarea id="_results_" class="_results_"></textarea>
</div>
<script src="index.js"></script>
</body>
</html>
\ No newline at end of file
// document.getElementById('_Create_Json_').addEventListener('click', () => {
// document.getElementById('_results_').value = _Create_Json_Function_();
// })
document.getElementById('_Create_Json_').addEventListener('click', _Click_Function_)
document.getElementById('_down_load_').addEventListener('click', _Down_Load_)
var _Result_Data_ = [];
//总归函数
function _Add_Result_Function_(_Result_List_) {
if (_Result_Data_.length == 0) {
_Result_Data_ = _Result_Data_.concat(_Result_List_)
} else {
for (let i = 0; i < _Result_Data_.length; i++) {
Object.assign(_Result_Data_[i], _Result_List_[i])
}
}
document.getElementById('_results_').value = JSON.stringify(_Result_Data_);
}
//数据生成函数
function _Create_Json_Function_(_Config_Array_, _Data_Number_) {
for (let i = 0; i < _Config_Array_.length; i++) {
if (_Config_Array_[i] == "id") {
_Create_Id_(_Data_Number_)
} else {
_Create_Others_(_Data_Number_, _Config_Array_[i])
}
}
}
//id生成
function _Create_Id_(_Data_Number_) {
let _Result_List_ = [];
for (let i = 0; i < _Data_Number_; i++) {
_Result_List_.push({
id: i
})
}
_Add_Result_Function_(_Result_List_)
}
function _Create_Others_(_Data_Number_, _Key_) {
let _Result_List_ = [], _Req_Data_;
getJSON(`/_auto_create_json_object_/_configs_/${_Key_}.json`).then((_Res_) => {
_Req_Data_ = _Res_
for (let i = 0; i < _Data_Number_; i++) {
let _Key_Value_ = "";
_Result_List_[i] == undefined ? _Result_List_[i] = new Object() : "";
function _Di_Gui_(_Req_Data_) {
for (let x = 0; x < _Req_Data_.length; x++) {
if (_Req_Data_[x][1].constructor === Array) {
_Di_Gui_(_Req_Data_[x])
} else {
_Key_Value_ += _Req_Data_[x][Math.floor(Math.random() * _Req_Data_[x].length)]
if (_Key_ == "sex") {
_Key_Value_ = Number(_Key_Value_)
}
}
}
}
_Di_Gui_(_Req_Data_)
_Result_List_[i][_Key_] = _Key_Value_
}
_Add_Result_Function_(_Result_List_)
}
)
}
//点击生成按钮事件
function _Click_Function_() {
_Result_Data_ = [];
let _Data_Number_ = document.getElementById("_Data_Number_").value;
if (!_Data_Number_) {
return;
}
let _Config_Array_ = [];
_Config_Array_ = _Get_Base_Config_();
_Create_Json_Function_(_Config_Array_, _Data_Number_);
}
//获取基础配置选项
function _Get_Base_Config_() {
let _Base_Config_Array_ = [];
let _Base_Config_List_ = document.getElementsByName("_base_config_check_");
for (let i = 0; i < _Base_Config_List_.length; i++) {
if (_Base_Config_List_[i].checked) {
_Base_Config_Array_.push(_Base_Config_List_[i].value);
}
}
return _Base_Config_Array_;
}
function getJSON(url) {
return new Promise((resolve, reject) => {
var XHR = new XMLHttpRequest();
XHR.open('GET', url, true);
XHR.send();
XHR.onreadystatechange = function () {
if (XHR.readyState == 4) {
if (XHR.status == 200) {
try {
var response = JSON.parse(XHR.responseText);
resolve(response);
} catch (e) {
reject(e);
}
} else {
reject(new Error(XHR.statusText));
}
}
}
})
}
//下载函数
function _Down_Load_() {
let uri = 'data:text/csv;charset=utf-8,\ufeff' + encodeURIComponent(document.getElementById('_results_').value);
var link = document.createElement("a");
link.href = uri;
link.download = "_Json_.json";
link.click();
}
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册