Поскольку вы объединяете строки .
В JavaScript строки определяются между кавычками или двойными кавычками.Следовательно, var thing = 100;
- это число, а var thing = '100';
- это строка.
Строки - это просто набор символов, при этом не имеет числового значения (На самом деле это не так, но вы должны это понятьбез труда).Наличие строки var thing = '100';
имеет то же числовое значение, что и строка var thing = 'asd';
, которая не равна.
Конкатенация двух строк дает в результате конкатенацию, следовательно, "asd" + "zxc"
приводит к "asdzxc"
,точно так же, как вы объединяете две строки следующим образом: "100" + "100"
приводит к "100100"
.
Чтобы ваш код работал, просто удалите разделитель строк и суммируйте фактические числа, например:
this.film.style.width = (window.innerWidth + 100) + 'px';
Обратите внимание, как я убрал одинарные кавычки вокруг 100
, чтобы оно было действительным числом.