Когда и почему return false
в JavaScript?
javascript
jquery
zsharp
источник
источник
event.preventDefault()
эту функциональность. Я верю, что возвращение ложного значения устарело и больше не всегда работает.return false
в методе, это что-то меняет?Я предполагаю, что вы имеете в виду тот факт, что вам часто приходится ставить «возврат ложный»; оператор в ваших обработчиках событий, т.е.
«Возвращение ложного»; в этом случае браузер не может перейти к текущему местоположению, как указано в href = "#" - вместо этого выполняется только doSomeFunction (). Это полезно, когда вы хотите добавить события в теги привязки, но не хотите, чтобы браузер перепрыгивал вверх и вниз на каждую привязку при каждом клике.
источник
Он используется для остановки распространения события . Вы видите, когда у вас есть два элемента, оба с обработчиком события щелчка (например)
Если вы щелкнете по внутреннему элементу (element2), он вызовет событие щелчка в обоих элементах: 1 и 2. Он называется «Пузыри событий». Если вы хотите обработать событие только в element2, то обработчик события должен вернуть false, чтобы остановить распространение события.
Другим примером будет обработчик ссылки onclick. Если вы хотите, чтобы ссылка перестала работать. Вы можете добавить обработчик onclick и вернуть false. Чтобы остановить распространение события на обработчик по умолчанию.
источник
false
из обработчика события предотвратит действие по умолчанию, связанное с событием; Вы также можете сделать это с помощью вызоваevent.preventDefault()
или настройкиevent.returnValue = false
(IE); чтобы остановить событие от всплытия, вам нужно позвонитьevent.stopPropagation()
или настроитьevent.cancelBubble = true
(IE)Э-э ... как насчет в булевой функции, чтобы указать «не правда»?
источник
Я также пришел на эту страницу после поиска "js, когда использовать" return false; " Среди других результатов поиска была страница, которую я нашел гораздо более полезной и понятной, на сайте CSS-Tricks Криса Койера: «Разница между возвращаемым значением false»; и 'e.preventDefault ();'
Суть его статьи:
хотя я бы по-прежнему рекомендовал прочитать всю статью.
Обновление: после обсуждения преимуществ использования return false; в качестве замены для e.preventDefault (); & e.stopPropagation (); один из моих коллег отметил, что return false также останавливает выполнение обратного вызова, как описано в этой статье: jQuery Events: Stop (Mis) Using Return False .
источник
function() { return false; }
EQUAL TOfunction(e) { e.preventDefault(); e.stopPropagation(); }
, но в чистом js, это не то же самое,function() { return false; }
EQUAL TO наfunction(e) { e.preventDefault(); }
самом деле. Это не останавливает распространение.При использовании
each
функции jQuery возвращение true или false имеет значение. См докисточник
Я думаю, что лучший вопрос заключается в том, почему в случае, когда вы оцениваете логический набор возвращаемых значений, вы НЕ используете истину / ложь ? Я имею в виду, вы могли бы иметь истину / нуль, истину / -1, другое разное. Javascript «ложные» значения для замены, но зачем вам это делать?
источник
Если вы хотите запустить код javascript из тега привязки, следует использовать обработчик onclick, а не псевдопротокол javascript :. Код javascript, который выполняется внутри обработчика onclick, должен возвращать true или false (или выражение, отличное от true или false) обратно к самому тегу - если он возвращает true, то HREF привязки будет следовать как обычная ссылка. Если он возвращает false, то HREF будет игнорироваться. Вот почему "вернуть ложь"; часто включается в конец кода в обработчик onclick.
источник
Вы используете return false, чтобы предотвратить что-то. Так что если у вас есть скрипт, работающий на submit, то возвращение false будет препятствовать работе submit.
источник
Когда в функции вызывается оператор возврата, выполнение этой функции останавливается. Если указано, данное значение возвращается вызывающей функции. Если выражение опущено, вместо него возвращается undefined.
Для получения дополнительной информации посетите страницу документации MDN
return
.источник
вернуть false, используя только если у вас есть какой-то рабочий в функции (с помощью некоторого теста) или вы хотите остановить какую-то функцию, например, используйте return false в конце «onsubmit»
источник
Кроме того, эта короткая и интересная ссылка для чтения через https://www.w3schools.com/jsref/event_preventdefault.asp
Определение и использование
Метод warnDefault () отменяет событие, если его можно отменить, а это означает, что действие по умолчанию, относящееся к событию, не произойдет.
Например, это может быть полезно, когда:
Примечание. Не все события можно отменить. Используйте свойство cancellable, чтобы узнать, можно ли отменить событие.
Примечание. Метод protectDefault () не предотвращает дальнейшее распространение события через DOM. Используйте метод stopPropagation () для обработки этого.
источник