当前位置: 首页 > news >正文

【备份】不知道什么时候写的IniReader.js

【备份】不知道什么时候写的IniReader.js

function render(url,id)
{const div = document.getElementById(id)var request = new XMLHttpRequest()request.open("get",url)request.send()var data = request.responseTextvar ini = parseIni(data)generateHTML(ini,div)}
function parseIni(data) {var regex = {section: /^\s*\[\s*([^\]]*)\s*\]\s*$/,param: /^\s*([\w\.\-\_]+)\s*=\s*(.*?)\s*$/,comment: /^\s*;.*$/};var value = {};var lines = data.split(/\r\n|\r|\n/);var section = null;lines.forEach(function (line) {if (regex.comment.test(line)) {return;} else if (regex.param.test(line)) {var match = line.match(regex.param);if (section) {value[section][match[1]] = match[2];} else {value[match[1]] = match[2];}} else if (regex.section.test(line)) {var match = line.match(regex.section);value[match[1]] = {};section = match[1];} else if (line.length === 0 && section) {section = null;}});return value;
}
function generateHTML(ini,root) {var container = document.createElement('div');container.id = 'ini-container';for (var section in ini) {if (ini.hasOwnProperty(section)) {var sectionDiv = document.createElement('div');sectionDiv.className = 'section';var sectionHeader = document.createElement('h2');sectionHeader.textContent = section;sectionDiv.appendChild(sectionHeader);var paramsDiv = document.createElement('div');paramsDiv.className = 'params';for (var param in ini[section]) {if (ini[section].hasOwnProperty(param)) {var paramDiv = document.createElement('div');paramDiv.className = 'param';var paramName = document.createElement('span');paramName.className = 'param-name';paramName.textContent = param + ': ';var paramValue = document.createElement('span');paramValue.className = 'param-value';paramValue.textContent = ini[section][param];paramDiv.appendChild(paramName);paramDiv.appendChild(paramValue);paramsDiv.appendChild(paramDiv);}}sectionDiv.appendChild(paramsDiv);container.appendChild(sectionDiv);}}root.appendChild(container)
}

 

http://www.jsqmd.com/news/26818/

相关文章:

  • CSS尺寸、盒子模型、定位、浮动与布局(Flex/Grid)
  • 通过中国信通院SQL质量管理最高等级评测,天翼云TeleDB引领数据库管理新标准!
  • AtCoder Regular Contest 208 (Div. 2) 题解
  • 第三十篇
  • 代码大阅读笔记
  • 第2次软件基础作业
  • 第二次软件基础作业
  • vs2017安装qt插件及安装qt插件后的设置
  • 实用指南:从0死磕全栈之Next.js Server Actions 入门实战:在服务端安全执行逻辑,告别 API 路由!
  • KeyShot许可管理故障排除步骤
  • 各式各样的Attention - -一叶知秋
  • 重塑生产力:天翼云全球首发RaaS,开启“机器人即服务”商业时代!
  • Python自然语言处理(NLP)入门
  • 【计算机视觉】分水岭搭建医学诊断
  • mysql和java获取经纬度的距离的两种方式
  • Sequence2Sequence - -一叶知秋
  • SQL索引及调优
  • Python列表 _ 创一个购物清单
  • 如何在Golang项目中集成Prometheus进行监控?
  • 第177天:信息收集篇自动项目本机导出外部打点域内通讯PillagerBloodHound
  • 如何在Linux中,为Flatpak版本的Edge浏览器导入证书
  • 2025年防火HPL板厂家权威推荐榜单:耐刮防火板/耐高温防火板 /阻燃高压装饰板源头厂家精选
  • Java 集合 “Map(1)”面试清单(含超通俗生活案例与深度理解) - 教程
  • 2025 年铸铁井盖生产厂家最新推荐榜,技术实力与市场口碑深度解析防沉降球墨/防沉降/电力/双层铸铁井盖公司推荐
  • 220kv数字化变电站保护解决方案综述[期刊理解]
  • 2025年10月VI设计公司权威推荐排行榜:排名依据包括项目交付质量、客户满意度、创新能力和市场影响力
  • 2025年0糖苏打水厂家权威推荐榜单:带帽苏打水/茉莉苏打水 /蜜桃苏打水源头厂家精选
  • Bilidown Setup 1.2.7下载
  • rpm因依赖安装失败的一次检查记录
  • 0296-Nand-机器语言