关于这句三元操作符的判断
来源:2-8 高效创建节点的方法 (innerText-outerText)
离离钟
2018-11-07 14:55:28
typeof (elem.textContent == 'string') ? elem.textContent : elem.innerText
这句怎么分析啊?
我自己分析下,括号内的先看,内容和'string'比较?双等号比较值,值除非是'string',否则肯定是false吧。然后typeof false?返回boolean,然后判断boolean是true还是false?我已经懵逼了。
而且而且。。。。我的火狐,谷歌都可以通过innerText和textContent设置啊。四种情况都可以。
1回答
判断浏览器是否支持textContent属性,如果支持就使用textContent来设置内容,如果不支持就使用innerText属性来设置内容。这段代码我们会审核处理一下,同学可以按照这样的方式来解读:
(typeof elem.textContent == 'string') ? elem.textContent : elem.innerText
视频中使用textContent是为了解决火狐浏览器不支持innerText属性的问题,但是目前因为谷歌浏览器版本升级,现在也支持innerText属性了,所以都可以测试。
祝学习愉快!
相似问题