我在项目中已经多次看到我在设置元素的inner
Html之前,之前清理了值,如下所示:
var foo = document.getElementById('foo') foo.innerHTML = ''; foo.innerHTML = '<span>Bar</span>'
我找不到任何有理由这样做,只是团队中的每个人都遵循这种“练习”.根据我的理解,任何人都可以重新定义innerHtml属性来执行自定义操作,但除此之外,还有其他任何我缺少的吗?
谢谢!
编辑:更新示例代码以避免倾斜(感谢@freefaller)
解决方法
听起来这个项目在某些时候看到了
cargo-cult programming.
不仅没有理由两次设置元素的.innerHTML属性,而且它实际上不必要地减慢了页面的速度.对DOM进行的每次修改都会导致浏览器停止并更新文档树,这意味着每次都会浪费周期.innerHTML被设置为空字符串.