javascript中使用未定义变量或值的情况分析


Posted in Javascript onJuly 19, 2016

本文实例讲述了javascript中使用未定义变量或值的情况。分享给大家供大家参考,具体如下:

javascript里面一般不能使用未定义的值,但是下面几种情况除外:

1. 赋值语句中:

a=9;
alert(a) //9

赋值语句中需要赋值的变量没定义会先定义,再赋值。另外从 a=b=c=8 不报错可以看出赋值语句是从右向左执行的。

2. for in语句中:

for(key in {name:'goofy'}){
    alert(key) //"name"
}
alert(key) //"name"

for in语句中in左边的变量如果没定义也会先定义

3. typeof运算符后:

alert(typeof a) //'undefined'
alert(a) //Uncaught ReferenceError: a is not defined

typeof 运算符可以跟未定义的值,但是不会去主动定义它

4. 对象属性:

var o={name:'goofy'}
alert(o.name) // 'goofy'
o[age]=24; // Uncaught ReferenceError: age is not defined
alert(o.age)

在定义对象属性的时候如果是json直接量的形式可以使用没定义的值, 但是如果用下标的形式就会报错

5. function的参数:

function fn(a,b){
    alert(a) //4
    alert(b) //'undefined'
}
fn(4)

函数执行的时候会主动定义参数,所以在函数体内可以直接使用函数的参数,即时方法调用的时候这个参数并没有传递也不会报错

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
检测jQuery.js是否已加载的判断代码
May 20 Javascript
json格式的时间显示为正常年月日的方法
Sep 08 Javascript
页面元素绑定jquery toggle后元素隐藏的解决方法
Mar 27 Javascript
jQuery如何取id有.的值一般的方法是取不到的
Apr 18 Javascript
JavaScript中length属性的使用方法
Jun 05 Javascript
利用JS制作万年历的方法
Aug 16 Javascript
JS禁止浏览器右键查看元素或按F12审查元素自动关闭页面示例代码
Sep 07 Javascript
Node.js 获取微信JS-SDK CONFIG的方法示例
May 21 Javascript
Electron-vue开发的客户端支付收款工具的实现
May 24 Javascript
Vue 路由间跳转和新开窗口的方式(query、params)
Dec 25 Javascript
使用konva和vue-konva库实现拖拽滑块验证功能
Apr 27 Javascript
JS判断数组四种实现方法详解
Jun 29 Javascript
js基于cookie记录来宾姓名的方法
Jul 19 #Javascript
jQuery悬停文字提示框插件jquery.tooltipster.js用法示例【附demo源码下载】
Jul 19 #Javascript
使用plupload自定义参数实现多文件上传
Jul 19 #Javascript
artDialog+plupload实现多文件上传
Jul 19 #Javascript
plupload+artdialog实现多平台上传文件
Jul 19 #Javascript
如何在JS中实现相互转换XML和JSON
Jul 19 #Javascript
js 动态给元素添加、移除事件的实现方法
Jul 19 #Javascript
You might like
世界上第一台立体声收音机
2021/03/01 无线电
php 操作excel文件的方法小结
2009/12/31 PHP
PHP strip_tags保留多个HTML标签的方法
2016/05/22 PHP
PHP简单判断手机设备的方法
2016/08/23 PHP
PHP isset()与empty()的使用区别详解
2017/02/10 PHP
php简单中奖算法(实例)
2017/08/15 PHP
浅谈php的TS和NTS的区别
2019/03/13 PHP
PHP设计模式(四)原型模式Prototype实例详解【创建型】
2020/05/02 PHP
JS的递增/递减运算符和带操作的赋值运算符的等价式
2007/12/08 Javascript
JS下高效拼装字符串的几种方法比较与测试代码
2010/04/15 Javascript
基于JQuery.timer插件实现一个计时器
2010/04/25 Javascript
extjs 时间范围选择自动判断的实现代码
2014/06/24 Javascript
JavaScript中的console.profile()函数详细介绍
2014/12/29 Javascript
javaScript事件机制兼容【详细整理】
2016/07/23 Javascript
Ajax的概述与实现过程
2016/11/18 Javascript
js实现从左向右滑动式轮播图效果
2017/07/07 Javascript
Vue.js中使用iView日期选择器并设置开始时间结束时间校验功能
2018/08/12 Javascript
小程序日历控件使用方法详解
2018/12/29 Javascript
angular4中引入echarts的方法示例
2019/01/29 Javascript
vue实现图片上传预览功能
2019/12/23 Javascript
js实现聊天对话框
2020/02/08 Javascript
原生JS与JQ获取元素的区别详解
2020/02/13 Javascript
解决vue watch数据的方法被调用了两次的问题
2020/11/07 Javascript
python 从远程服务器下载东西的代码
2013/02/10 Python
django创建自定义模板处理器的实例详解
2017/08/14 Python
Python中的并发处理之asyncio包使用的详解
2018/04/03 Python
python创建文件时去掉非法字符的方法
2018/10/31 Python
Python完成哈夫曼树编码过程及原理详解
2019/07/29 Python
Python利用matplotlib绘制折线图的新手教程
2020/11/05 Python
Python3中对json格式数据的分析处理
2021/01/28 Python
在css3中background-clip属性与background-origin属性的用法介绍
2012/11/13 HTML / CSS
掌上明珠Java程序员面试总结
2016/02/23 面试题
关于教师节的演讲稿
2014/09/04 职场文书
2014年银行员工年终自我评价
2014/09/19 职场文书
校园安全主题班会
2015/08/12 职场文书
解析Java异步之call future
2021/06/14 Java/Android