Closed NameWjp closed 3 years ago
不是转义字符,是正则字面量,两根 /
之间就是初始化正则的内容。
另:转义字符是反斜杠
@luwuer 好久前看的文章了,我重新查看了下原文章,确实[A-Z]前面有转义符,原文的正则如下: const domPropsRE = /\[A-Z]|^(?:value|checked|selected|muted)$/
噢噢,我看了你说的文章,估计写错了吧,就算没有转义符也不符合他的描述
它还能匹配那些拥有大写字母的属性,这是为了匹配诸如 innerHTML、textContent 等属性
@luwuer 我觉得去掉转义是正确的,去掉后的含义是匹配属性里有大写字母的或者这些属性(value|checked|selected|muted)中的一个,符合文章中说的话(它还能匹配那些拥有大写字母的属性,这是为了匹配诸如 innerHTML、textContent 等属性)。
/[A-Z]/
只能保证字符串含有大写字母,但包含不代表正确,比如 c A c
等非法属性。
正则代码为 const domPropsRE = /\[A-Z]|^(?:value|checked|selected|muted)$/ 不太明白这里[A-Z]前面为什么要加转义符 \ 而且加了后无法匹配 innerHTML 字符 感觉这里的转义符是多余的,作者笔误了,还是另有说法?