I want to check if the browser supports .textContent
I have thought these options:
if( document.body.textContent ) { }if( document.createElement('div').textContent !== void(0) ) { }Of course, the first one is simpler, but the problem I see is that maybe the browser calculates all the string, which can be slow if the website is huge.
Then, which one should I choose? Or is there a better option?
Edit: I have created a jsperf
With...
'textContent' in document.body
... expression you'll just check a property (textContent) existence in document.body object, without actually checking its value.
And yes, it is false in IE8.
Use 2nd option. Far more efficient. I've just done the test.
Note: Raw Test. Speed: 355 ms vs 6 ms.
<!DOCTYPE html>
<html>
<body>
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
varasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsgasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsasdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjs
asdajfhaskjaskngakjgnaskjgnaskgjasngkajsngakjsg
<script>
var d0 = new Date();var n0 = d0.getTime();
for(var i = 0 ; i < 10000 ; i++){
if( document.body.textContent ) { }
}var d1 = new Date(); var n1 = d1.getTime(); console.log(n1-n0);
var array0 =[];
var d0 = new Date(); var n0 = d0.getTime();
for(var i = 0 ; i < 10000; i++){
if( document.createElement('div').textContent !== void(0) ) { }
}var d1 = new Date(); var n1 = d1.getTime(); console.log(n1-n0);
</script>
</body>
</html>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With