js 請問未宣告的變數的資料型別是不是Null

2021-03-21 15:55:06 字數 3884 閱讀 4704

1樓:司馬刀劍

有的,二者區別如下:

為null值的物件會被自動**,undefined一般表示未定義.

比如function test(a) test();這樣執行a是undefined,所以輸出undefined.

2樓:匿名使用者

js不需要宣告變數型別。未賦值的變數就是undefinedvar a

console.log(a === undefined)console.log(a === null)

3樓:匿名使用者

不是,應該是undefined

4樓:友香梅海蘭

js中的null代表不存在,在某些情況下和undefined定義一樣,比如null==undefined返回的是true;而undefined這表示未定義;undefined是個型別,null是個object;然而''則表示具體的型別的值了;如果一個變數申明瞭未賦值,則型別未定義,這裡判斷變數==null會返回true;

根本區別在於變數是否已經賦值,即是否已經初始化這裡要清楚:null是個object型別,且值只有nullundefined是個undefined型別,值只有undefined

''是個string型別的值

那麼這裡null==undefined返回truenull===undefined返回falsenull==''返回false

undefined==''返回false

js中的null應該是基本資料型別還是引用型別

5樓:育知同創教育

js基本資料型別的變數存放的是基本型別資料的實際值;而引用資料型別的變數儲存對它的引用,即指標。

js基本資料型別:null undefined number boolean

string比較特殊

引用資料型別:function object array

var a = 11;

var b = 1;

b = 12;

console.log(a); //11 a的值不會隨b值得改變而改變

var a = [1,2,3];

var b = a;

a[0] = 2;

console.log(b[0]) //2, b的值隨著a的值改變而改,因為他們指向同一個記憶體地址

var a = [1,2,3];

var b = a;

b = [11, 12, 13];//b指向了另一個記憶體地址,與a斷開關聯

a[0] = 2;

console.log(b[0]) //11,b的值不隨a的值改變而改變

比如說 var a = 1; 1是基本資料型別,因此變數a存放的就是1這個值

var b = [1,2,3],[1,2,3]是引用資料型別,[1,2,3]是放在記憶體中的,而變數b存放的是[1,2,3]的地址,而不是[1,2,3]這個值

當使用b這個變數時,js直譯器會通過b存放的記憶體地址,找到記憶體中的相應地址,將其中的值取出來返回

6樓:yhy我要吃肉

null基本資料型別

高程中明確說了是基本資料型別

你用typeof 雖然返回的是object但instanceof object 結果是false

js中的變數==null 與變數=='';之間的差別

7樓:匿名使用者

js中的null代表不存在,在某些情況下和undefined定義一樣,比如null==undefined返回的是true;而undefined這表示未定義;undefined是個型別,null是個object;然而''則表示具體的型別的值了;如果一個變數申明瞭未賦值,則型別未定義,這裡判斷變數==null會返回true;

根本區別在於變數是否已經賦值,即是否已經初始化這裡要清楚:null是個object型別,且值只有nullundefined是個undefined型別,值只有undefined

''是個string型別的值

那麼這裡null==undefined返回truenull===undefined返回falsenull==''返回false

undefined==''返回false

8樓:_達文西

三者是不一樣的

undefined

宣告一個變數沒有賦值,預設就是undefined例如:var i;

null

當你想要表示某個變數沒有具體值的時候給變數所賦的值null也可以看成是一個值,就像true,false例如:var i=null;

''空字串

可以看成是一個和a,b相同的特殊字元

注意:undefined == null;//返回trueundefined === null;//返回false

js中null和undefined的區別

9樓:夏冰

undefined型別只有一個值,即undefined。當宣告的變數還未被初始化時,變數的預設值為undefined。

null型別也只有一個值,即null。null用來表示尚未存在的物件,常用來表示函式企圖返回一個不存在的物件。

例1:js **:

var ovalue;

alert(ovalue == undefined); //output "true"

這段**顯示為true,代表ovlaue的值即為undefined,因為我們沒有初始化它。

例2:js **:

alert(null == document.getelementbyid('notexistelement'));

當頁面上不存在id為"notexistelement"的dom節點時,這段**顯示為"true",因為我們嘗試獲取一個不存在的物件。

例3:js **:

alert(typeof undefined); //output "undefined"

alert(typeof null); //output "object"

10樓:匿名使用者

null是一個特殊的資料,表示沒有,但是資料是已經定義過的。

undefined 是表是未定義。

js定義變數,和變數為空有什麼區別

11樓:匿名使用者

資料bai型別 , 記憶體結構 區別du

定義變數但是沒zhi有賦值給這個變數 他的dao型別就是undefined;

例如版 var a; //undefined 只在棧裡面有空權間佔用

定義變數是空 他的型別是個空物件object;

例如 var b = null ; //空object 他在堆疊都有空間;

js中null和""有區別嗎

12樓:小可

在 jscript 中資料型別null只有有一個值:null。關鍵字 null 不能用作函式或變數的名稱。 包含

專 null 的變數包含「無值」或「屬無物件」。換句話說,該變數沒有儲存有效的數、字串、boolean、陣列或物件。可以通過給一個變數賦null值來清除變數的內容。

在 jscript中,null 與0不相等(與在 c 和 c++ 中不同)。同時應該指出的是,jscript中 type運算子將報告 null 值為object型別,而非型別null。這點潛在的混淆是為了向下相容。

13樓:邱浩初蓬韋

區別非常大:

null是物件型別,表示空物件,alert(typeof(null)); 會輸出object

" "是一個空格的字串,alert(typeof(" "));會輸出string。

mysql中的資料型別varchar 255 表示什麼意思

char是一種固定長度的型別,varchar則是一種可變長度的型別,它們的區別是 char m 型別的資料列裡,每個值都佔用m個位元組,如果某個長度小於m,mysql就會在它的右邊用空格字元補足 在檢索操作中那些填補出來的空格字元將被去掉 在varchar m 型別的資料列裡,每個值只佔用剛好夠用的...

sql資料庫中常用的資料型別有什麼

一 整數資料型別 整數資料型別是最常用的資料型別之一。1 int integer int 或integer 資料型別儲存從 2的31次方 2 147 483 648 到2的31次方 1 2 147 483,647 之間的所有正負整數。每個int 型別的資料按4 個位元組儲存,其中1 位表示整數值的正...

excel2019中輸入的資料型別分為幾類,分別是什麼

文字 和bai 數值 兩種型別,其他都是du 它們的變形 格式 zhi 比dao如 貨幣 日期內 時間 小數等等 都是 數值容的 顯示格式的 變化 是指 都是數值!數值型 是可以進行數 算的,而文字不可以直接進行數 算 文字 和 數值 兩種抄型別 其他都是 它們bai的變形 格式 比如du 貨幣 日...