В WebRTC официального образца я нашел в некоторых местах следующий код:Почему мы создаем «window.x = x = ...» в функциях javascript?
var pc1;
...//some code
function call() {
//...some code
// Add pc1 to global scope so it's accessible from the browser console
window.pc1 = pc1 = new RTCPeerConnection(servers);
//...
}
На W3C Tutorials (http://www.w3schools.com/js/js_scope.asp) Я нашел, что:
var carName = "Volvo";
// code here can use window.carName
Поскольку в HTML, объект окна глобальный охват.
Так что мой вопрос- есть какая-то логика, что они использовали
window.pc1 = pc1 = new RTCPeerConnection(servers);
вместо простого
pc1 = new RTCPeerConnection(servers);
Я не разработчик Javascript, так что это немного сбивает с толку найти такое заявление в официальном учебнике WebRTC, когда вчера я только что прочитал, что такое утверждение нелогично.
Там нет необходимости в том, что, так как внутри 'call' функции Счёт' pc1' переменная является глобальной (что означает - это то же самое, что и 'window.pc1'. – Dekel
Если бы они использовали' let pc1; ', тогда это имело бы значение. – jib
@jib no let, no var – Krystian