经研究发现,两者之间有很大的区别,不知从英语讲,这两者都有啥区别,研究结果如下

测试os:ubuntu

测试浏览器:chrome

测试案例1

console.log(a)

报错 ReferenceError: a is not defined

测试案例2

var a

console.log(a)

无报错,但是输出undefined

测试案例2

var b = {};

console.log(b.a)

无报错,但是输出undefined

测试案例3

function c() {

}

var d = new c();

console.log(d.a)

无报错,但是显示undefined

关于typeof

以上所有用来测试的对象用typeof 返回的都是 String("undefined")

关于或运算 ||

var d = a||3

报错 a not defined

var a;

var d = a || 3

结果:d==3

var c = 22 || 44

c==22

var c = false || 33

c == 33

if(x) {

}

报错

var x

if(x) {

}

if内不执行

总结:

js中有两种undefined 虽然用typeof 返回都是 String("undefined")

其中 定义之后,但是未经任何操作或者某对象的一个未定义的属性,都属于 可以拿来运算的 undefined ,可以用来当作逻辑运算

第二种的变量,完全没有定义,而且没有任何背景的(x.a,虽然x无a属性,但是给x面子),属于报错类型不能被使用,除非用typeof函数


js中的或运算,并不返回bool值,而是返回js对两边条件最后一个计算的值,比如 1||2 1为真,2不需要计算,所以 1||2 == 1 a||1 报错

var a; a|| 1 == 1;


找了本辞典翻译了一下

undefined可以翻译成:不明确的,也就是不知道用来干嘛的

而 not defined 可以翻译成 未定义的

转载于:https://www.cnblogs.com/yangkai-cn/p/4016644.html

javascript中的undefined 和 not defined相关推荐

  1. javascript中的undefined,null,,0和false的云集

    在各种各样的数据类型中,我们都会为其定义一个"空值"或"假值",比如对象类型的空值null,.NET Framework中数据库字段的空值DBNull,bool ...

  2. 区分JavaScript中的undefined,null和NaN

    区分underfined,null和NaN 先看看下面语句的运行结果: 1: var a; 2: alert(a); //显示"undefined" 3: alert(typeof ...

  3. javaScript中的undefined

    Undefined类型 Undefine类型只有一个值,就是undefined,通过let或者var声明的变量但没有初始化时,就相当于给变量赋予了undefined,对于const和不加修饰符的变量必 ...

  4. Javascript中undefined和not defined有什么区别?

    概念上的解释: undefined是javascript语言中定义的五个原始类中的一个,换句话说,undefined并不是程序报错,而是程序允许的一个值. not defined是javascript ...

  5. [转]JavaScript中的几个tip

    1.JavaScript中的继承 在 JavaScript中实现继承的方法是:将子类的 prototype 属性设置为父类的对象. 例如,我有一个 Basket 类,继承 Hashtable 类: j ...

  6. java Null==undefined_javascript中的undefined和null有什么区别

    原标题:javascript中的undefined和null有什么区别 java中的undefined和null的区别有:类型不同前者返回的是未定义值后者是对象:转换原始类型方式不同前者是不支持转换后 ...

  7. javascript中not defined、undefined、null以及NaN的区别

    [ 前言 ] 从踏入IT行业开始,我就发现技术人员写博客很有必要.如果不写博客,时间久了就像好比天天在外面建房子的人,没有一个自己的房子一样.不管学习紧不紧,工作忙不忙,多动手进行梳理总结,一方面是为 ...

  8. 是否有标准函数检查JavaScript中的null,undefined或空白变量?

    是否有通用的JavaScript函数可检查变量是否具有值并确保其undefined或为null ? 我有以下代码,但是不确定是否能涵盖所有情况: function isEmpty(val){retur ...

  9. 解剖JavaScript中的null和undefined

    在JavaScript开发中,被人问到:null与undefined到底有啥区别? 一时间不好回答,特别是undefined,因为这涉及到undefined的实现原理.于是,细想之后,写下本文,请各位 ...

最新文章

  1. 在java中表示json_在Java中解析JSON而不知道JSON格式
  2. pythonselenium浮动框_python上selenium的弹框操作实现
  3. 编码实现Spring 利用@Resource注解实现bean的注入,xml实现基本数据类型的注入
  4. 洛谷——P2083 找人
  5. java gsp_GSP序列模式分析算法
  6. TFIDF java实现
  7. log4j每天生成一份html格式的日志
  8. python嵌套列表操作方法_python中多层嵌套列表的拆分方法
  9. 最优化理论与算法期末试题_最优化原理和方法试题答案.doc
  10. 计算机控制技术课程2018更新资料
  11. html 左侧居中对齐,HTML的居中对齐
  12. Windows 10聚焦怎么用?教你玩转Windows聚焦功能
  13. 计算机大一会学ps吗,PS老是卡真的是电脑的问题吗?学会这几步帮你解决PS卡顿问题!...
  14. AutoCAD2020安装教程
  15. 软文写作技巧与营销的相互作用
  16. 常见的弱口令爆破工具
  17. RAS--远程访问服务
  18. 俄罗斯方块游戏开发教程7:消除判断和处理
  19. 空间参考系统据库srs.db的使用
  20. 边缘设备、系统及计算杂谈(9)——dapr学习之二

热门文章

  1. openStack Packages yum upgrade
  2. Oracle delete input与delete all input
  3. linux memcacheQ的安装与使用
  4. mysql命令行的几个用法
  5. Oracle数据库性能优化
  6. shutdown TCP ports,blocked all malicious scan
  7. python 反传播_岗位 | 滴滴急招反欺诈数据分析实习生(可转正)!字节跳动+德勤实习生项目热招中...
  8. mysql 表名通配符导出,mysqldump只有某些前缀/ Mysqldump通配符的表?
  9. Java 并发(JUC 包-03)
  10. 输油管道问题 测试数据_建立测试时要考虑的数据管道