.closest('h2')
возвращает ноль, потому что в ваших элементах div нет h2.
Добавьте проверку ноль перед использованием if (strongTag[i].closest('h2') != null){ }
Попробуйте добавить h2, чтобы он работал
<div><h2><a>DoNotChangeMe</a><strong>DoFindMe</strong></h2></div>
var strongTag = document.querySelectorAll('strong');
for (var i = 0, len = strongTag.length; i < len; ++i) {
if(strongTag[i].innerHTML.indexOf('DoFindMe') !== -1) {
strongTag[i].closest('h2').style.backgroundColor = 'yellow';
}
}
a {
display: block;
background: pink;
}
<div>
<div>
<h2>Head...<a>DoNotChangeMe</a>...ing</h2>
</div>
<div>
<div><a>DoNotChangeMe</a><strong>DoNotFindMe</strong></div>
</div>
</div>
<div>
<div>
<h2>Head...<a>DoChangeMe</a>...ing</h2>
</div>
<div>
<div><h2><a>DoNotChangeMe</a><strong>DoFindMe</strong></h2></div>
</div>
</div>
<div>
<h2>Head...<a>DoNotChangeMe</a>...ing</h2>
</div>
<div>
<div><a>DoNotChangeMe</a><strong>DoNotFindMe</strong></div>
</div>
</div>