Это побитовое ИЛИ. При оценке выражения LHS усекается до целого числа и возвращается, поэтому | фактически совпадает с Math.floor ().
от вопрос уже есть ответ здесь:
Использование побитового ИЛИ 0 для создания номера 6 ответовЛюбой, кто может объяснить, что такое "|" а значение после делает? Я знаю, что выход для 0 создает наборы из 13, числа 3, 2, 1, 0. Но как насчет | 1 или | 2.
var i = 52;
while(i--) {
alert(i/13 | 0);
}