Como o sinal de igual único funciona na declaração if em javascript

Recentemente eu vi uma declaração que funciona em javascript na internet e gostaria de saber qual é o significado de um único sinal de igual (=) em javascript como eu uso principalmente em instruções if.
É uma função de comparação que inclui sinal de igual duplo (==)

if(i = 1) {
    alert(i);
}

Isso funciona, eu me perguntava o que aconteceria quando a instrução if fosse atribuída ao valor de 1 para a variável i e verificasse o valor de i que é o mesmo que:

i = 1
if(i) {
    alert(i)
}

Mas logo percebi que a atribuição de uma variável de valor precisa ter a palavra-chave var, então alterei o código para:

  if(var i = 1) {
        alert(i);
  }

Desta vez o código não funciona. Por quê?

questionAnswers(6)

yourAnswerToTheQuestion