前端基础(四十三):文本数据解析为键值对

效果

源码

js 复制代码
function parseKeyValueText(text) {
    return text.split(/\r\n|\r|\n/)
        .filter(d => d !== '')
        .map(line => {
            const [key, value = ''] = line.split(/:(.+)?/, 2).map(v2 => v2 === null || v2 === void 0 ? void 0 : v2.trimLeft());
            if (key || value) {
                return {
                    [key]: (function (value) {
                        try {
                            return JSON.parse(value);
                        } catch (e) {
                            return value;
                        }
                    }(value))
                }
            } else {
                return null;
            }
        });
}
相关推荐
踩着两条虫5 分钟前
VTJ.PRO AI + 低代码实战:接入高德地图
前端·vue.js·ai编程
绝世唐门三哥6 分钟前
React性能优化:memo、useMemo和useCallback全解析
前端·react.js·memo
咬_咬7 分钟前
go语言学习(数组与切片)
开发语言·学习·golang·数组·切片
兔子零10248 分钟前
Claude Code 都把宠物养进终端了,我做了一个真正能长期玩的中文宠物游戏
前端·游戏·游戏开发
xiaotao1319 分钟前
Vite 与 Webpack 开发/打包时环境变量对比
前端·vue.js·webpack
小陈工10 分钟前
Python Web开发入门(十八):跨域问题解决方案——从“为什么我的请求被拦了“到“我让浏览器乖乖听话“
开发语言·python·机器学习·架构·数据挖掘·回归·状态模式
m0_4972141511 分钟前
Qt事件系统
开发语言·qt
AI科技星11 分钟前
全维度相对论推导、光速螺旋时空与北斗 GEO 钟差的统一理论
开发语言·线性代数·算法·机器学习·数学建模
摆烂工程师14 分钟前
教你如何查询 Codex 最新额度是多少,以及 ChatGPT Pro、Plus、Business 最新额度变化
前端·后端·ai编程
赵优秀一一15 分钟前
Python 工程化基础1:环境(conda)、pip、requirements.txt
linux·开发语言·python