JavaScript тройное равенство и сравнение с тремя переменными

Может кто-нибудь объяснить это?

1 == 1        //true, as expected
1 === 1       //true, as expected
1 == 1 == 1   //true, as expected
1 == 1 == 2   //false, as expected
1 === 1 === 2 //false, as expected
1 === 1 === 1 //false? <--

Также есть имя для логической логики, которая сравнивает более двух чисел таким образом (я назвал это «сравнением с тремя переменными», но я думаю, что это было бы неправильно ...)

Ответы на вопрос(2)

Ваш ответ на вопрос