В JavaScript есть два специальных значения: неопределенные и нулевые, и вы должны быть осторожны при их сравнении. То, что вы получаете при чтении неназначенных переменных или пытаетесь прочитать свойства, которых у объекта нет, является неопределенным значением.
<! Doctype html> <html lang = "en"> <head> <meta charset = "utf-8"> <Title> Learn4undefinedAndnull </title> </head> <body> <script> var mydata = {name: "luka", погода: "sunny"}; document.writeln ("prop:"+mydata.doesnexits); </script> </body> </html>Результат вывода:
Проп: неопределенная
JavaScript также определяет специальное значение NULL, которое немного отличается от неопределенного. Последнее - это значение, полученное, когда значение не определено, в то время как первое используется для указания того, что значение было назначено, но не является допустимым объектом, строкой, номером или логическим значением (то есть определяемое значение - это бесценное значение [без значения]).
Следующий код использует неопределенные и нулевые, чтобы показать их различные эффекты:
<! Doctype html> <html lang = "en"> <head> <meta charset = "UTF-8"> <Title> Learn4undefinedAndnull </title> </head> <body> <script> var mydata = {name: "luka"}; // Читать атрибут погоды. // определить, имеет ли объект документ атрибута погоды. mydata.weather = "солнечный"; document.writeln ("var:"+mydata.weather+"<br />"); document.writeln ("prop:"+("погода" в mydata)+"<br /> <br />"); mydata.weather = null; document.writeln ("var:"+mydata.weather+"<br />"); document.writeln ("prop:"+("погода" в mydata)+"<br/> <br/>"); </script> </body> </html>Результат вывода:
Var: undefinedprop: falsevar: sunnyprop: truevar: nullprop: true
1. Проверьте, является ли переменная или свойство неопределенным или нулевым
Если вы хотите проверить, является ли свойство нулевым или неопределенным (независимо от того, какой), просто используйте оператор IF и логический не оператор (!).
<! Doctype html> <html lang = "en"> <head> <meta charset = "UTF-8"> <Title> Learn4undEfinedAndnull </title> </head> <body> <script> var mydata = {name: "luka", city: null}; if (! mydata.name) {document.writeln ("Имя NULL или неопределенное <br /> <br />"); } else {document.writeln ("Имя не является нулевым или неопределенным <br /> <br />")} if (! mydata.city) {document.writeln ("Город является нулевым или неопределенным <br /> <br />"); } else {document.writeln ("Город не нулевой или не определенный <br /> <br />")} if (! mydata.weather) {document.writeln ("Погода является нулевой или неопределенной <br /> <br />"); } else {document.writeln ("Погода не является нулевой или неопределенной <br/> <br/>")} </script> </body> </html>Результат вывода:
Имя не является нулевым или неопределенным.
2. Различают нулевые и неопределенные
При сравнении двух значений используемый метод должен быть определен в соответствии с вашими потребностями. Если вы хотите в равной степени обработать неопределенные и нулевые значения, вам следует использовать оператор равенства (==), чтобы дать JavaScript выполнять преобразование типа. В настоящее время переменная с неопределенным значением будет считаться равной переменной со значением нуля. Если вы хотите различить нулевые и неопределенные, вам следует использовать эквивалентный оператор (===).
<! Doctype html> <html lang = "en"> <head> <meta charset = "utf-8"> <Title> Learn4undefinedAndnull </title> </head> <body> <script> var firstval = null; var secondval; var Equality = FirstVal == SecondVal; var Identity = FirstVal === SecondVal; document.writeln ("Равенство:"+Равенство+"<br />"); document.writeln ("Identity:"+Identity+"<br />"); document.writeln ("Identity:"+Identity+"<br />"); /> "); </script> </body> </html>Результат вывода:
Равенство: TrueIdentity: Неверно
Приведенное выше Javascript Basics_simple сравнение неопределенных и нулевых значений - это все контент, которым я делюсь с вами. Я надеюсь, что вы можете дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.