все работет
<a href="">
<script>
var a = document.querySelector('a'), b = 4;
if (b == 4) {
a.href = "/myLink.html";
a.textContent = "/myLink.html";
} else {
a.href = "/otherLink.html";
a.textContent = "/otherLink.html";
}
</script>
<a href="">
<script>
var a = document.querySelector('a'), b = 3;
if (b == 4) {
a.href = "/myLink.html";
a.textContent = "/myLink.html";
} else {
a.href = "/otherLink.html";
a.textContent = "/otherLink.html";
}
</script>
может селектор ссылки не тот у вас?
document.querySelector('a') - берет первую из документа