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 相关文章推荐
JS 文件本身编码转换 图文教程
Oct 12 Javascript
return false;和e.preventDefault();的区别
Jul 11 Javascript
Jquery replace 字符替换实现代码
Dec 02 Javascript
关闭ie窗口清除Session的解决方法
Jan 10 Javascript
判断字符串的长度(优化版)中文占两个字符
Oct 30 Javascript
BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)
Jul 07 Javascript
Angular2生命周期钩子函数的详细介绍
Jul 10 Javascript
vue父组件中获取子组件中的数据(实例讲解)
Sep 27 Javascript
微信小程序自定义轮播图
Nov 04 Javascript
vue单页应用的内存泄露定位和修复问题小结
Aug 02 Javascript
JS实现横向跑马灯效果代码
Apr 20 Javascript
如何在vue中使用HTML 5 拖放API
Jan 14 Vue.js
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
PHP 上传文件的方法(类)
2009/07/30 PHP
支持中文的php加密解密类代码
2011/11/27 PHP
PHP基于数组实现的分页函数实例
2014/08/20 PHP
摘自织梦CMS中的图片处理类
2015/08/08 PHP
优化WordPress的Google字体以加速国内服务器上的运行
2015/11/24 PHP
浅谈PHP的$_SERVER[SERVER_NAME]
2017/02/04 PHP
php常用字符串查找函数strstr()与strpos()实例分析
2019/06/21 PHP
细品javascript 寻址,闭包,对象模型和相关问题
2009/04/27 Javascript
判断浏览器的javascript版本的代码
2010/09/03 Javascript
JS重要知识点小结
2011/11/06 Javascript
JS实现点击上移下移LI行数据的方法
2015/08/05 Javascript
有关easyui-layout中的收缩层无法显示标题的解决办法
2016/05/10 Javascript
完美实现js选项卡切换效果(二)
2017/03/08 Javascript
从零开始学习Node.js系列教程四:多页面实现数学运算的client端和server端示例
2017/04/13 Javascript
详解VueJS 数据驱动和依赖追踪分析
2017/07/26 Javascript
js实现鼠标拖拽多选功能示例
2017/08/01 Javascript
angular.js4使用 RxJS 处理多个 Http 请求
2017/09/23 Javascript
详解小程序输入框闪烁及重影BUG解决方案
2018/08/31 Javascript
Vue实现调节窗口大小时触发事件动态调节更新组件尺寸的方法
2018/09/15 Javascript
js获取form表单中name属性的值
2019/02/27 Javascript
基于javascript处理nginx请求过程详解
2020/07/07 Javascript
[56:00]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs TNC 第二场
2018/04/10 DOTA
[51:10]VP vs VGJ.S 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
[03:41]2018完美盛典-《Fight With Us》
2018/12/16 DOTA
Python IDE PyCharm的基本快捷键和配置简介
2015/11/04 Python
python程序 创建多线程过程详解
2019/09/23 Python
pytorch 自定义卷积核进行卷积操作方式
2019/12/30 Python
python匿名函数lambda原理及实例解析
2020/02/07 Python
Pytorch 中的optimizer使用说明
2021/03/03 Python
护理专业自我鉴定
2014/01/30 职场文书
初中班主任评语
2014/04/24 职场文书
大学生自我评价200字(4篇)
2014/09/17 职场文书
2014单位领导班子四风对照检查材料思想汇报
2014/09/25 职场文书
2015年中学总务处工作总结
2015/07/22 职场文书
高效笔记技巧分享:学会这些让你不再困扰
2019/09/04 职场文书
Nginx反向代理配置的全过程记录
2021/06/22 Servers