JavaScript
Пожалуйста объясните человеческим языком где и как используется значение undefined и null в JavaScript ?
Пожалуйста объясните своим языков где и как используется значение null и undefined желательно с примером прошу не писать не чего лишнего
(function (x) { return x; })(); // здесь ожидается переменная x, но она не инициализирована
(function () { return document.querySelector('#xbf6gsf4d'); })(); // здесь ожидается HTML-объект с id='xbf6gsf4d', которого нет в DOM
// Вставляй код функций по очереди в консоль JavaScript и прочувствуй разницу! А то задолбал уже всех)
(function () { return document.querySelector('#xbf6gsf4d'); })(); // здесь ожидается HTML-объект с id='xbf6gsf4d', которого нет в DOM
// Вставляй код функций по очереди в консоль JavaScript и прочувствуй разницу! А то задолбал уже всех)
undefined – неопределенный тип данных. Например, если обратиться к переменной, которой не присвоено никакое значение. У null это значение 0, пустота, а в случае undefined переменная есть, но значение вообще не определено.
На практике... Ну вот
var node = null;
function selectNextNode() {
resetColor();
if (node == null) {
var list = document.getElementById("list");
node = list.firstChild;
node.setAttribute("style", "color:green");
return;
}
// Получение следующего элемента, которые в дереве находиться на одном уровне.
node = node.nextSibling;
if (node != null) {
node.setAttribute("style", "color:green");
}
}
Цель функции перемещаться по элементам списка и перекрашивать следующий дочерний элемент в зеленый цвет.
Если переменная node пуста – тогда находим список, находим первый дочерний элемент, перекрашиваем его в зеленый цвет и прекращаем работу функции ключевым словом return.
Но когда опять нажимаем на кнопку «показать следующий узел» – снова сбрасываем все цвета. В первое условие уже не попадаем, так как в предыдущий раз в переменную node был записан объект и она не пуста.
Записываем в node следующий узел.
Проверяем не последний ли это узел, так как у последнего узла ниже лежащих сестринских узлов уже нет. Если в переменной node будет null – снова попадем в первое условие.
На практике... Ну вот
var node = null;
function selectNextNode() {
resetColor();
if (node == null) {
var list = document.getElementById("list");
node = list.firstChild;
node.setAttribute("style", "color:green");
return;
}
// Получение следующего элемента, которые в дереве находиться на одном уровне.
node = node.nextSibling;
if (node != null) {
node.setAttribute("style", "color:green");
}
}
Цель функции перемещаться по элементам списка и перекрашивать следующий дочерний элемент в зеленый цвет.
Если переменная node пуста – тогда находим список, находим первый дочерний элемент, перекрашиваем его в зеленый цвет и прекращаем работу функции ключевым словом return.
Но когда опять нажимаем на кнопку «показать следующий узел» – снова сбрасываем все цвета. В первое условие уже не попадаем, так как в предыдущий раз в переменную node был записан объект и она не пуста.
Записываем в node следующий узел.
Проверяем не последний ли это узел, так как у последнего узла ниже лежащих сестринских узлов уже нет. Если в переменной node будет null – снова попадем в первое условие.
undefined используется, если у тебя где-то определяется переменная, но в данном конкретном участке кода ещё не известно, определена она или нет. Например, если по нажатию на кнопку у тебя создаётся какой-нибудь массив, а ты уже запускаешь проверку этого массива, тогда if (typeof массив == 'undefined') позволит избежать попыток обратиться к элементу якобы массива, которого не существует.
null можешь присваивать чему хочешь, это обычный такой тип данных. Например, переменную можно проинициализировать null'ом, чтобы потом проверять, заполнена она уже чем-то или нет. Функция может вернуть null при каких-то условиях. Скажем, ищешь ты позицию слова относительно указанной позиции в тексте. Отрицательные числа — влево от указанной позции, положительные — справа. И что же вернуть, когда вообще ничего не найдено? null тут хорошо подойдёт, но можно и false, это уж кому как.
null можешь присваивать чему хочешь, это обычный такой тип данных. Например, переменную можно проинициализировать null'ом, чтобы потом проверять, заполнена она уже чем-то или нет. Функция может вернуть null при каких-то условиях. Скажем, ищешь ты позицию слова относительно указанной позиции в тексте. Отрицательные числа — влево от указанной позции, положительные — справа. И что же вернуть, когда вообще ничего не найдено? null тут хорошо подойдёт, но можно и false, это уж кому как.
null означает например на столе стакана нет .
undefined означает, что стакан есть но пустой .
undefined означает, что стакан есть но пустой .
Юра Лапаев
...и без дна)
Похожие вопросы
- Какое значение имеет символ доллара ($) в JavaScript?
- Объясните мне, пожалуйста, что это за аргументы функции в javascript ( function(arg1, arg2, ..) ).
- Как лучше/где начать изучать язык JavaScript?
- JavaScript с чего начать учить язык
- Как через JavaScript ввести значение в если у него нет ID?
- В чём проблема? не могу длину определить? undefined возвращает
- Вопросы по языку javascript
- Javascript Объясните, пожалуйста, методы apply, call и caller.
- Javascript. local storage. Дайте ссылку, где почитать о нем или сами объясните.
- Что лучше учить новичку Python или JavaScript? На каком языке легче будет найти работу на фрилансе ?