• Почему не работает js код?

    MrDecoy
    @MrDecoy Куратор тега JavaScript
    Верставший фронтендер
    if (newArr === [])

    Потому что это сравнение ссылок двух массивов, а не проверка массива на пустоту.
    [] - новый пустой массив. То есть в памяти выделилось пространство для нового массива.
    Даже если newArr тоже [] то это не одно и то же, потому что массивы это ссылочный тип данных. То есть для newArr так же выделена отдельная память для массива.

    Коротко: [] !== [] потому что области памяти разные для двух разных пустых массивов.

    ну и примитивная аналогия: два пустых одинаковых ящика это же не один и тот же ящик, верно?
    Ответ написан
    Комментировать