关闭页面特效

JavaScript知识点总结(命名规范,变量的作用域)

1|0  命名规范


  有人说JavaScript的宽容性是这个语言最糟糕的方面之一。比如说想把2个数字加在一起,JavaScript会把其中一个数字解析成字符串,那么就会得到一个奇怪的字符串,而不是2个数字的和。

  说到JavaScript的数据类型的时候,环境就是一切。本文要讲述3种数据类型:字符串类型,布尔型,数字型。

  JavaScript的变量和其他语言的变量很相似。它们用来保存值,而这些保存了的值,可以在代码的不同的地方被访问到。在其所使用的作用域范围内,每个变量的标识符是一样的。JavaScript变量是区分大小写的比如StringBuilder 和stringBuilder 就是2个不同的变量。另外,变量的名称不能是关键字,下表有助于你快速查询哪些是关键字。

break else new var
case finally return void 
catch for switch while
continue function this with
default if throw  
delete in try  
do instanceof typeof  

  以上是ECMA-Script的保留字,当然还有一些JS的专用字,它们是浏览器中的保留字,这些也不能作为变量来用,如下表:

alert eval location open
array focus math outerHeight
blur function name parent
boolean history navigator parseFloat
date image number regExp
document isNaN  object status
escape length onLoad string

  以下是一些命名规则,当然,不是强制性规定的哦:

  对于集合,名称应该用复数:

1
var customerNames=new Array();

  如果你要声明的是一个对象的话,对象名的首字母大写。

1
var firstName=new String('Peter');

  函数和变量都要以小写字母开头:

1
Function validateName(firstName,lastName)

  Prototype 命名法:

  很多新的命名法,目的并不是让语言具有可读性,而是更加让语言接近其他语言,这对于后端开发人员学习前端来说,更有好处。

  以下划线开始来表示私有变量:

1
var _object= new Object();

  Prototype还使用$来表示快捷方法,最显著的一个例子就是JQuery。函数的名称应该使用动词+名词,变量名则最好使用名词,例如:

1
2
var currentMonth;
function returnCurrentMonth()

  如果是循环的话,尽量使用简单的表示,比如i,j,k等。

 

2|0  作用域


  我们来对比一下如下2行代码:

1
2
num_value=3;
var num_value=3;

  我前面提过,JavaScript没有强制要求声明一个变量的时候显示的使用var 关键字,但是这2者之间的区别就在于作用域的区别。有如下好处:

  防止同名的局部变量和全局变量之间的冲突,比如某一个页面同时引用了2个JS文件,而这2个JS文件当中,有2个同名的全局变量,这样就会造成二义性,具体的代码大家可以看完以后自己去试一下,就是一个HTML文件 引用了2个JS文件,然后这2个JS文件中有2个不带var的同名变量,赋予2个不同的值,可以看看输出如何,这里就不再演示了。

  

 

 

  


__EOF__

作  者ღKawaii
出  处https://www.cnblogs.com/kmsfan/p/4604165.html
关于博主:一个普通的小码农,为了梦想奋斗
版权声明:署名 - 非商业性使用 - 禁止演绎,协议普通文本 | 协议法律文本
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!

posted @   yangliwen  阅读(302)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
0
1
关注
跳至底部
document.getElementById("homeTopTitle").innerText="ღKawaii";
点击右上角即可分享
微信分享提示