@vis0r

Java Script зачем в выражении присваивания восклицательный знак?

увидел в чужом исходнике странную конструкцию
прошу пояснить зачем тут перед некоторыми значениеми стоит восклицательный знак
window.project_transitioning = !0, window.index_last_scroll_position = $(window).scrollTop();
	    var e = $(this).attr("href"),
	      n = $(this).parent().attr("data-project-bg-colour");
	    set_project_colour(n), get_direction(t.pageX, t.pageY), set_position_before_animation();
	    var i = do_directional_open_animation();
	    i.eventCallback("onComplete", function() {
	      window.project_transitioning = !1, hide_all_projects();
	      var t = $.pjax({
	        url: e,
	        container: "main",
	        fragment: "#pjax_container",
	        timeout: !1
	      })
	    })
  • Вопрос задан
  • 6545 просмотров
Решения вопроса 4
@tplus
!0 -> true
!1 -> false

экономия на символах? :)
Ответ написан
@zolotykh
web-разработчик
!true === false
!false === true
Ответ написан
Комментировать
IonDen
@IonDen
JavaScript developer. IonDen.com
Это краткая запись true) Особого смысла нет.
Ответ написан
Комментировать
mmmaaak
@mmmaaak
Берем консоль браузера, пишем "!0" - получаем "true", пишем "!1" - получаем "false". По моим личным догадкам: "!0" - 2 символа, "true" - 4 символа. С "!1" аналогично.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Humble_Beck
WebDeveloper
!1 = false,
!0 = true,
! - отрицание
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы