Javascript中null和空的区别

2021-01-05 07:01:01 字数 5431 阅读 7707

1楼:折柳成萌

var str1 = null; str引用为空

var str2 = ""; str引用一个空串

也就是null没有分配空间,""分配了空间,因此str1还不是一个实例化的对象,而str2已经实例化。

2楼:匿名用户

不知道到底想顾虑那种,既然已经定义并且获得了usernamevalue,那么length==0即可过滤空

js中null和” “有什么区别啊。

3楼:夏冰

结果上没有任何区别,都代表给str赋值一个空的结果,

但typeof 出来的结果,会有不同,str=''时,typeof的结果为string,str=null,typeof出来的结果object。

4楼:匿名用户

var str1 = null; str引用为空

var str2 = ""; str引用一个空串

也就是null没有分配空间,""分配了空间,因此str1还不是一个实例化的对象,而str2已经实例化。

5楼:匿名用户

区别非常大:

null是对象类型,表示空对象,alert(typeof(null)); 会输出object

" "是一个空格的字符串,alert(typeof(" "));会输出string。

6楼:匿名用户

null说明这个变量是null值," "表示这个字符串是几个空格。

null值和空格是2个不同的赋值。

js中null和""有区别吗

7楼:小可

在 jscript 中数据类型null只有有一个值:null。关键字 null 不能用作函数或变量的名称。 包含

专 null 的变量包含“无值”或“属无对象”。换句话说,该变量没有保存有效的数、字符串、boolean、数组或对象。可以通过给一个变量赋null值来清除变量的内容。

在 jscript中,null 与0不相等(与在 c 和 c++ 中不同)。同时应该指出的是,jscript中 type运算符将报告 null 值为object类型,而非类型null。这点潜在的混淆是为了向下兼容。

8楼:邱浩初蓬韦

区别非常大:

null是对象类型,表示空对象,alert(typeof(null)); 会输出object

" "是一个空格的字符串,alert(typeof(" "));会输出string。

javascript中null和undefined的区别?

9楼:爱佳佳的恐龙

1.类型不一样:

console.log(typeof undefined);//undefined

console.log(typeofnull);//object2.转化为值时不一样:

undefined为nan ,null为0console.log(number(undefined));//nan

console.log(number(10+undefined));//nan

console.log(number(null));//0console.log(number(10+null));//103.

undefined===null;//falseundefined==null;//true

10楼:

在javascript中存在这样两种原始类型:null与undefined。这两种类型常常会使javascript的开发人员产生疑惑,在什么时候是null,什么时候又是undefined?

undefined类型只有一个值,即undefined。当声明的变量还未被初始化时,变量的默认值为undefined。

null类型也只有一个值,即null。null用来表示尚未存在的对象,常用来表示函数企图返回一个不存在的对象。

js **

varovalue;

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

这段**显示为true,代表ovlaue的值即为undefined,因为我们没有初始化它。

js **

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

当页面上不存在id为"notexistelement"的dom节点时,这段**显示为"true",因为我们尝试获取一个不存在的对象。

js **

alert(typeofundefined);//output"undefined"

alert(typeofnull);//output"object"

第一行**很容易理解,undefined的类型为undefined;第二行**却让人疑惑,为什么null的类型又是object了呢?其实这是javascript最初实现的一个错误,后来被ecmascript沿用下来。在今天我们可以解释为,null即是一个不存在的对象的占位符,但是在实际编码时还是要注意这一特性。

js **

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

ecmascript认为undefined是从null派生出来的,所以把它们定义为相等的。但是,如果在一些情况下,我们一定要区分这两个值,那应该怎么办呢?可以使用下面的两种方法。

js **

alert(null===undefined);//output"false"

alert(typeofnull==typeofundefined);//output"false"

使用typeof方法在前面已经讲过,null与undefined的类型是不一样的,所以输出"false"。而===代表绝对等于,在这里null === undefined输出false。

11楼:匿名用户

undefined表示

变量声明但未初始化时的值,

null表示准备用来保存对象,还没有真正保存对象的值。从逻辑角度看,null值表示一个空对象指针。

javascript(ecmascript标准)里共有5种基本类型:undefined, null, boolean, number, string,和一种复杂类型object。可以看到null和undefined分属不同的类型,未初始化定义的值用typeof检测出来是"undefined"(字符串),而null值用typeof检测出来是"object"(字符串)。

任何时候都不建议显式的设置一个变量为undefined,但是如果保存对象的变量还没有真正保存对象,应该设置成null。

实际上,undefined值是派生自null值的,ecmascript标准规定对二者进行相等性测试要返回true,即

alert(null==undefined);//true

12楼:犬瘟热

undefined类型只有一个值,即undefined。当声明的变量还未被初始化时,变量的默认值为undefined。

null类型也只有一个值,即null。null用来表示尚未存在的对象,常用来表示函数企图返回一个不存在的对象。

拓展资料:javascript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为javascript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在html(标准通用标记语言下的一个应用)网页上使用,用来给html网页增加动态功能。

在1995年时,由***scape公司的brendan eich,在网景导航者浏览器上首次设计实现而成。因为***scape与sun合作,***scape管理层希望它外**起来像java,因此取名为javascript。但实际上它的语法风格与self及scheme较为接近。

为了取得技术优势,微软推出了jscript,cenvi推出scriptease,与javascript同样可在浏览器上运行。为了统一规格,因为javascript兼容于ecma标准,因此也称为ecmascript。

13楼:匿名用户

它们都是javascript的基本数据类型之一

区别:undefined:当声明的变量还未被初始化时,变量的默认值为undefined。

null:用来表示尚未存在的对象,常用来表示函数企图返回一个不存在的对象。

一般可以这么检验

vara=null

varb=undefined

varc;

console.log('**********==')

console.log(a==b)//true

console.log(a===b)//false

console.log(b===c)//注意:返回true

console.log('**********==')

console.log(a===null)//true

console.log(b===null)//false

console.log('**********==')

console.log(a===undefined)//false

console.log(b===undefined)//true

一般在条件if中,无论a是null还是undefined,都会这么使用

if(!a)

14楼:匿名用户

这个我喜欢用java中的内存

堆栈模型来解释(注:只是类比,javascript不是java,还有这是我自己的理解,我不知道有没有其他人是这么理解的)

null相当于在栈里有变量了,但是没有指向堆里的地址undefined是连栈里都没有

15楼:匿名用户

null是不存在

undefined错误、不明确、未定义

一般在js中判断空值的作法如下

if(s==null||s==undefined||s=="")

16楼:匿名用户

undefine是未定义的对象

null是定义的对象 但是没有实例 ....

可以理解为null是defined了的obj只是没有赋值或new

在javascript中,nan, null和undefined的区别是什么?

17楼:匿名用户

nan:保

bai留值(不是数字)

null:未定du

义或空字符串zhi

undefined:对象属性dao不存在,或,声明专了变量但从未赋属值。

nan很少直接使用,而是用isnan(numvalue)的形式来进行判断,如果numvalue是数字,那么返回false,反之,返回true(即nan)

另外两个很常见,就不用解释了吧?

js中null和有什么区别啊,js中null和""有区别吗

1楼 夏冰 结果上没有任何区别,都代表给str赋值一个空的结果, 但typeof 出来的结果,会有不同,str 时,typeof的结果为string,str null typeof出来的结果object。 2楼 匿名用户 var str1 null str引用为空 var str2 str引用一个空...

JS中null和undefined值的区别

1楼 匿名用户 null和undefined都是javascript中的基本数据类型,但在使用上比较大的区别。 在类型上的区别typeof null 返回objecttypeof undefined 返回undefined在使用上的区别null代表数据项有定义,但是没有赋值,此时初始值为null 空...

java判断null,a和a,null的区别

1楼 匿名用户 java中不需要,因为java中有boolean类型。 当我们判断 i 1 时,如果写成了 i 1,是不会通过编译的。 当我们判断 flag true 时,我们只会写 if flag 而不会写 if flag true 。 当我们判断 flag false 时,我们只会写 if fl...