目录

1.标识符的命名规范

2.程序注释

3.常用标识符命名方法

4.ECMAScript5严格模式


参考书籍:《JavaScript 权威指南----ECMAScript5+HTML5DOM+HTML5BOM》编著:张亚飞

JavaScript编写语法遵循ECMAScript标准,以下是ECMAScript语言的一些基本规范。

1.标识符的命名规范

ECMAScript标识符遵循以下标准命名规则:

a. 第一字符必须是为字母、下划线( _ )或者美元符号( $ )。

b. 其他字符可以是字母、下划线、美元符号或数字,最好不要包含其他字符。

c. 不能把关键字或者保留字作为标识符。

例如下面的代码都是错误的:

var 5count=0;           //首字符不能使用数字
var yes/no=false;      //包含非法字符“/”
var undefined="undefined";   //undefined是内建常量关键字

2.程序注释

(1)单行注释和尾随注释

使用双斜线“//”可以定义单行注释或尾随注释。

例如下面的代码:

var oDate=new Date();   // 创建新的日期对象
// 检查今天是否是星期日
if(day=="sun"){
}

(2)多行注释

多行注释又被称为块注释,可以使用“/*”和“*/”进行定义,位于注释开始标签“/*”和注释结束标签“*/”之间的任何字符都将被解释为注释并忽略。

例如下面的代码:

/* 本例采用多行的注释方式
*/

(3)文档注释

文档注释以“/**”开始,以“*/”结束,且每行都以一个星号“*”开头。

例如下面的代码:

/*** 该类为文档注释示例类* @author pengjunlee* @versioin 1.0.0.1* @since js 1.5*/    function HelloWorld(){}

(4)HTML注释

HTML注释以“<!--”开始,以“-->”结束,例如下面的代码:

<!--这里是HTML注释-->

3.常用标识符命名方法

(1)​驼峰命名法(Camel Notation)

第一个单词首字母小写,其余所有单词首字母大写。变量、函数、方法、属性等基本都采用这种命名方法,例如下面的定义:

function displayUserInfo(){};
var userName;

(2)​帕斯卡名法(Pascal Notation)

所有单词首字母大写。经常被用在类、接口的声明中,例如,HelloWorld就可以作为一个类名,而接口名经常在前面加一个大写字母 I,例如 IHelloWorld。

(3)匈牙利命名法(Hungarian Notation)

在标识符前面增加小写字母做前缀,多用于C、C++的标识符命名。其基本规则是:

标识符名称=特性前缀+功能描述

例如变量m_wndStatusBar,前缀 m_ 表示类的成员,wnd 也是前缀,表示的是变量对象特性,这里 wnd 的意义是窗口,所以 m_wnd 表示窗口类的成员,而 StatusBar 则是变量的功能描述。

以下是JavaScript常用到的匈牙利命名法前缀:

类型 前缀 类型 实例
数组 a Array aItems
布尔值 b Boolean bIsComplete
浮点数 f Float fPrice
整数 i Integer iItemCount
对象 o Object oDiv1
正则表达式 reg RegExp reEmailCheck
字符串 s String sUserName
变体变量 v Variant vAnything
函数 fn Function fnHandler

4.ECMAScript5严格模式

严格模式(Strict Mode)是ECMAScript5新增的功能,使用严格模式可以捕捉到一些常见的代码错误,抛出异常。当一些相对来说不安全的操作执行时,使用严格模式可以阻止或者抛出异常。

要在全局范围内使用严格模式,只需在程序第一行定义下面的一行代码:

"use strict";

要在函数内使用严格模式,只需在函数体内第一行定义下面的一行代码:

function fnInStrictMode(){"use strict";//... 其他代码 ...
}

以为严格模式仅仅是使用一行文本字符串声明来实现,所以对于旧的不支持严格模式的浏览器来说不存在兼容性问题,因此可以放心大胆地使用。

JavaScript语法规范相关推荐

  1. JSLint检测Javascript语法规范

    前端javascript代码编写中,有一个不错的工具叫JSLint,可以检查代码规范化,压缩JS,CSS等,但是他的语法规范检查个人觉得太"苛刻"了,会提示各种各样的问题修改建议, ...

  2. Javascript模块规范(CommonJS规范AMD规范)

    Javascript模块化编程(AMD&CommonJS) 前端模块化开发的价值:https://github.com/seajs/seajs/issues/547 模块的写法 查看 AMD规 ...

  3. JavaScript编码规范[百度]

    JavaScript编码规范 1 前言 2 代码风格 2.1 文件 2.2 结构 2.2.1 缩进 2.2.2 空格 2.2.3 换行 2.2.4 语句 2.3 命名 2.4 注释 2.4.1 单行注 ...

  4. javascript语法_JavaScript传播语法简介

    javascript语法 by Ashay Mandwarya ?️?? 由Ashay Mandwarya提供吗? JavaScript传播语法简介 (An introduction to Sprea ...

  5. Bootstrap CSS 编程规范之语法规范

    语法规范 CSS语法规范: 用两个空格来代替制表符(tab) -- 这是唯一能保证在所有环境下获得一致表现的方法. 为选择器分组时,将单独的选择器单独放在一行. 为了代码的易读性,在每个声明块的左花括 ...

  6. Bootstrap HTML编码语法规范

    语法规范 HTML编码的基本语法格式: 用两个空格来代替制表符(tab) -- 这是唯一能保证在所有环境下获得一致表现的方法. 嵌套元素应当缩进一次(即两个空格). 对于属性的定义,确保全部使用双引号 ...

  7. JavaScript 编码规范大全-Eslint(持续更新,欢迎关注点赞加评论)

    JavaScript 编码规范大全(持续更新,欢迎关注点赞加评论) 文章目录 JavaScript 编码规范大全(持续更新,欢迎关注点赞加评论) 前言 0. 相关工具 1. 类型 2. 引用 3. 对 ...

  8. 网易前端JavaScript编码规范

    在多年开发邮箱webmail过程中,网易邮箱前端团队积累了不少心得体会,我们开发了很多基础js库,实现了大量前端效果组件,开发了成熟的opoa框架以及api组件,在此向大家做一些分享.今天想先和大家聊 ...

  9. 前端代码编码和设计规范系列——JavaScript编程规范

    1文档信息 条目 内容 项目编号 通用 项目名称 通用 标题 JavaScript编程规范 类别 规范文档 当前 试用草稿 摘要 当前版本 V1.0 日期 2015/11/9 作者 徐维坚(xuwei ...

最新文章

  1. 使用Swagger创建Api
  2. C#——扩展.NET Framework基本类型的功能DEMO
  3. SAP Cloud for Customer的公有云和私有云部署方式 - Public Cloud vs Private Cloud
  4. mysql 索引列为Null的走不走索引及null在统计时的问题
  5. rost反剽窃检测系统_色情、低俗信息没得治?今日头条这款检测工具,240万人都在用!...
  6. java sql 工具类_Java防SQL注入工具类
  7. NetApp存储方案及巡检命令
  8. 网站优化后如何降低阿里云国际版服务器成本
  9. 终端应用安全之网络流量分析
  10. Server2008如何卸载MySQL_「完美卸载」完美卸载SQL Server 2008 R2 的方法,适合所有问题 - seo实验室...
  11. 动态规划之0-1背包问题(思路详解+表格演示过程+最优解打印方法+详细代码)
  12. [Maven 基础]-- Dependency Scope
  13. 相似度论文系列-1:入门方法Towards a Unified Multi-Dimensional Evaluator for Text Generation
  14. “decompose“没有适用于“ts“目标对象的方法
  15. linux下定时清理日志任务
  16. 【Pandas】根据某列分组求和
  17. nohup怎么更改名字_公司相关信息可以变更吗?公司注销怎么处理?
  18. 使用java怎么实现商品三级分类_如何实现列表三级分类---后端+前端
  19. linux中 ex是什么命令,Linux ex命令
  20. Methyltetrazine-DBCO,1802238-48-7该试剂可用于在无催化剂试剂的情况下,将含氮肽或蛋白质转化为四胺改性多肽或蛋白质

热门文章

  1. Rundeck基础:5:基础概念:操作操作Command与Execution
  2. Error when loading the SDK: 发现了以元素 'd:skin' 开头的无效内容。此处不应含有子元素。
  3. 充一次电使用一年的手机_20191213 手机充一次电用一年?
  4. 042原生的自引用方式实现多级数据渲染
  5. 读十年书,不如读懂这百句话
  6. 数据仓库 Inmon与Kimball数仓理论对比
  7. vr 体验 vr游戏
  8. python发送超大附件邮件_干货!大批量的邮件这样发送!简单方便快捷
  9. java毕业设计闲置物品交易系统mybatis+源码+调试部署+系统+数据库+lw
  10. android dialog圆角显示及解决出现的黑色棱角.(友情提示)