博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaScript var关键字、变量的状态、异常处理、命名规范等介绍
阅读量:7106 次
发布时间:2019-06-28

本文共 1541 字,大约阅读时间需要 5 分钟。

原文:

本篇主要介绍var关键字、变量的undefined和null状态、异常处理、命名规范。

1.var 关键字

1.1 作用

  声明作用;如声明个变量。

1.2 语法  

var c = 1;

1.3 省略var

在javascript中,若省略var关键字而直接赋值,那么这个变量为全局变量,哪怕是在function里定义的。

如代码所示,运行函数Define()后,变量a声明为全局变量。在Hello()函数中可以引用变量a。

 

2.变量的状态

变量的状态一般有三种:未定义、已定义未赋值、已定义已赋值。

前面两种状态不处理好,往往会造成异常现象。

2.1 变量未定义

2.1.1 异常说明

代码引用了一个未定义的变量后,浏览器会报错:变量未定义。

2.1.2 判断变量是否定义

可通过typeof()方法来判断变量是否未定义(已定义未赋值的变量也会显示undefined)。

2.2 已定义未赋值

2.2.1 代码示例

2.2.2 判断是否未赋值

function Show() {    var a;    if (typeof (a) == 'undefined' && a == null)        alert("a未赋值");    }}

 

3. JS异常

javascript的异常处理有三个关键字:try、catch、throw

try:包含可能出错的js语句。

catch:捕获出现的错误。

throw:创建自定义错误。

3.1 try、catch 系统默认异常信息

var erra;function ShowError() {    try {        erra = errb; //errb未定义        alert(erra);    } catch (ex) {        alert(ex); //输出异常信息:(Chrome)errb is not defined ,(IE)'errb'未定义    }}

3.2 try、catch、throw 自定义异常信息

 要加一个条件判断:

function ShowError() {    try {        if (typeof (errb) == "undefined")            throw "errb未定义";        erra = errb;    } catch (ex) {        alert(ex); //输出异常信息:(Chrome和IE)"errb未定义"    }}

3.3 异常捕获使用场景

1. 未捕获异常,浏览器会提示错误,有损用户体验:

IE中,未捕获的异常,会在左下角提示”网页上有错误":

 

Chrome中,除非打开(F12)开发者工具,才会跳到异常地方。否则会被浏览器自动忽略。

2. 获取异常信息帮助代码改进

可在catch块中,通过ajax把捕获的异常信息发送到服务器,以帮助代码改进。

 

4. JavaScript命名规范

首先JavaScript是区分大小写,以下只是便于阅读和维护,而不是必须的:

1.函数名称采用骆驼命名法:第一个单词小写,第二个单词首个字母为大写。如系统自带的函数:parseInt、isNaN

2.对象名称第一个字母大写。如:Math、Number、Array

3.事件多为on开头,并且小写。如:onclick、onload

  

==================================系列文章==========================================

本篇文章:3.1  JavaScript var关键字、变量的状态、异常处理、命名规范等介绍

 

转载地址:http://oophl.baihongyu.com/

你可能感兴趣的文章
struts2 遇到的问题 2
查看>>
Java问答:终极父类(3)
查看>>
彻底搞定Android开发中软键盘的常见问题
查看>>
Java使用RandomAccessFile读写文件
查看>>
程序员学习能力提升三要素
查看>>
《Java8实战》笔记-1.2.2传递代码:一个例子
查看>>
不懂技术的人不要对懂技术的人说这很容易实现
查看>>
HTML5之桌面提醒
查看>>
IDEA注册机
查看>>
微信APP支付 ,App无法调起微信
查看>>
Spring boot 内嵌tomcat,临时目录不存在 错误
查看>>
fedora16中virtualbox无法启动xp虚假机
查看>>
(十五)用JAVA编写MP3解码器——音频输出
查看>>
MyClouds开发指南》第1章 MyClouds微服务治理及快速开发平台简介
查看>>
mysql 时间格式化
查看>>
用JDK制作可能运行的JAR
查看>>
eval 解析 JSON 格式数据
查看>>
hibernate笔记(六)关于懒加载和load()方法之三——误区
查看>>
消息队里-消息队列应用场景
查看>>
推荐:7 月份值得一看的 Java 技术干货!
查看>>