使用Javascript 开发个JSON解析库

前言

花了几个小时写了这么个JSON解析库,挺有意思的,和大家分享下,思路大家可以借鉴下,编程技巧还是有的。

代码仓库

地址:json-parser

现在无论什么编程语言都有很多的json解析库了,之所以写这个么软件,不是为了在实际的项目开发中使用它,而是为了锻炼自身的编程技巧,还是那句话:

重点

任何一门编程语言都有词法分析的过程,结合语言本身的特点,解析为程序可以执行的命令,json解析也不例外,首先解析输入的文本生成token流:

使用Javascript 开发个JSON解析库

记录token的值,类型,开始和结束位置。

生成token之后,再根据JSON的语法特点,纠错检查再生成JavaScript数据结构(这个过程比较复杂,详情请看代码),比如:

  1. 对于json对象来说,键值之后必须得有冒号。
  2. JSON中只能有双引号。
  3. 对象必须闭合等等。

代码预览

使用Javascript 开发个JSON解析库

使用Javascript 开发个JSON解析库

使用Javascript 开发个JSON解析库

结语

程序无所不能,就看你的能力所及。

本作品采用《CC 协议》,转载必须注明作者和本文链接
如果有不懂的地方,可以加我的qq:1174332406,或者是微信:TogetherForeverJS
本帖由系统于 3个月前 自动加精
Dennis_Ritchie
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 3

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!