js中undefined,null,NaN的區別

2021-07-11 08:20:49 字數 1463 閱讀 2515

1. js中undefined,null,nan的區別

js中undefined,null,nan的區別

型別分析:

js中的資料型別有undefined,boolean,number,string,object等5種,前4種為原始型別,第5種為引用型別。

var a1;

var a2 = true;

var a3 = 1;

var a4 = "hello";

var a5 = new object();

var a6 = null;

var a7 = nan;

var a8 = undefined;

alert(typeof a);   //顯示"undefined"

alert(typeof a1); //顯示"undefined"

alert(typeof a2); //顯示"boolean"

alert(typeof a3); //顯示"number"

alert(typeof a4); //顯示"string"

alert(typeof a5); //顯示"object"

alert(typeof a6); //顯示"object"

alert(typeof a7); //顯示"number"

alert(typeof a8); //顯示"undefined"

從上面的**中可以看出未定義的值和定義未賦值的為undefined,null是一種特殊的object,nan是一種特殊的number。

2.比較運算

var a1;        //a1的值為undefined

var a2 = null;

var a3 = nan;

alert(a1 == a2); //顯示"true"

alert(a1 != a2); //顯示"false"

alert(a1 == a3); //顯示"false"

alert(a1 != a3); //顯示"true"

alert(a2 == a3); //顯示"false"

alert(a2 != a3); //顯示"true"

alert(a3 == a3); //顯示"false"

alert(a3 != a3); //顯示"true"

從上面的**可以得出結論:(1)undefined與null是相等;(2)nan與任何值都不相等,與自己也不相等。

3. form中element的值是''而不是null,申明的變數未賦值的,值為null或者為undefined,不為''

2.其實null、nan和undefined都是變數的預設初始值。變數型別不同,系統給與的初始值就不同:

int,uint - 0

boolean - false

number - nan

string,array,object - null

未指定變數型別 - undefined

js之旅(七)js中this

本文講述js中this的指向 介紹es5和es6中this的不同 在js es5中,使用的是function函式,誰在呼叫function,this就指向誰,有以下幾個特點 1.1 this最終指向的是呼叫它的物件 這個特點的就是es5中this的指向,其它特點都是對它的補充,如下示例 functi...

JS 理解JS中的物件

物件是object資料型別的值 物件是一組沒有特定順序的值 其中每個值都有乙個名字,從而,物件看起來就像是一組名值對。建立並定義物件的方法 1.var person new object person.name carolina person.age 29 person.job dream pers...

js中的函式

1 js中的string物件 1 內建的 2 屬性 length 3 方法 indexof 查詢子字串 匹配字串 查詢到了,返回 字串 出現的位置 沒有找到 返回 1 charat 返回指定位置的字串 substr 字串的擷取,可加兩個引數,形如 2,2 第二個位置 長度 也可以是乙個引數,則表示從...