编译顺序的问题

来源:6-8 parse(4)

橙宝宝

2019-12-06

老师课程里面讲的parseHTML是先讲Start tag,再讲End tag。而源码里面却是把End tag的处理放在前面,请问这样做是出于什么考虑呢?

写回答

1回答

ustbhuangyi

2019-12-06

你指的是这个顺序?
//img1.sycdn.imooc.com/szimg/5de9fb7f09f360c418281102.jpg
因为它对于以 < 开头的几种情况做了判断,包括注释、DocType、endTag 等等都用正则的方式去做了判断,那么最后剩的一种情况就是 startTag

0
3
慕仔3077336
回复
橙宝宝
其实textEnd===0,表示开始匹配到第一个‘<’的位置在html中开头字符,这种情况不太可能匹配到结尾的endTag的,这个顺序是对的,除非是一个没有任何属性的自闭标签
2020-10-20
共3条回复

Vue.js 源码深入解析 深入理解Vue实现原理

全方位讲解 Vue.js 源码,进阶高级工程师

4986 学习 · 1038 问题

查看课程