jquery 3.5.1 已发布,此版本修复了针对 3.5.0 的回归错误。具体来说就是,在此前的版本中将内部数据对象改为使用object.create( null )而非普通对象 ({})。之所以这样做是为了防止与 object.prototype 属性上的 key 发生冲突。然而,这也意味着用户(尤其是插件)无法再使用原生的 .hasownproperty 方法来检查 jquery 数据中的内容,导致破坏部分代码。
目前已恢复了这个改动,但官方计划在 jquery 4.0 中再放回去。这个改动也是此版本中唯一的代码改动,其他的改动包括对文档和构建系统的一些小更新。
上个版本 jquery 3.5.0 修复了 jquery dom 操作方法中出现的两个安全问题,例如.html(), .append()以及其他的 dom 操作方法。第一个问题已在中解释过,现在解释一下第二个安全问题。
第二个问题与第一个问题非常相似,这是一个 xss 漏洞,与传递