《JavaScript高级程序设计》学习总结之ECMAScript基础(一)

导读:
  
  注:该文章会不断添加更新。
   一、基本语法
  ECMAScript基础概念如下:
  1, 区分大小写。在ECMAScript中变量,函数名运算符及其他一切东西都是区分大小写的。
  test不等于Test。
  2, 变量是弱类型的。定义ECMAScript变量时只需使用var即可将它初始化为任意的值。
  var color="red"; //一个String类型变量
  var num=25; //一个Number类型变量
  var visible=true; //一个Boolean类型变量
  3, 每行结尾的分号可有可无。如果没有分号,ECMAScript自动将本行的结尾看作该语句的结束。
  (最好的习惯是写上分号,否则部分浏览器无法运行)。
  4, 注释与java/C等相同。当行注释为“//”,块注释为/*........*/。
  //单行注释
  /*多行
  注释*/
  5, 括号代表代码块。{...}之间的语句为一个代码块。
   二、变量
  基本规则:
  1、首字母必须是字母,下划线(_)或美元符号($)。
  2、剩余字符可以使下划线,美元符号或字母,数字。
  
  命名规则(非强制性规则):
  1、 Camel标记法。(首字母小写,剩余单词首字母大写)。
  如var myTestVar。
  2、 Pascal标记法。(首字母及剩余单词首字母全大写。)
  如var MyTestVar。
  3、 匈牙利类型标记法。(在变量名前附加一个小写字母说明该变量的类型)
  如iNum(Integer型),sValue(String型),bStatus(Boolean型),oBox(Object型)等。
  其他:
  变量使用前可以不用声明(不是一个好习惯)。
  三、变量类型
  原始值与引用值:
  1、原始值是存储在 中的简单数据段。
  2、引用值(即对象类型值)是存储在 中的对象。(存储在变量出的值是一个指针,指向存储对象的内存处)。
  原始类型(5个):
  Undefined,Null,Integer, String,Boolean.
  使用 typeof测试变量类型(原始类型):
  实例:
  1 var sTemp="test String"
  2 alert(typeof sTemp); //输出String
  3 alert(typeof 95); //输出Number
  4 alert(typeof null); //输出object
  5 alert(typeof aaa); //未定义变量返回undefined
  6 alert(typeof false); //输出Boolean
   注意:对象和NULL都会返回object。因为null被认为是对象的占位符。
  
  (Undefined类型)
  1、 undefined指未初始化的变量,或无返回值的函数。
  1 var oTemp;2 alert(typeof oTemp); //定义但未初始化
  3 alert(typeof oTemp2); //未定义亦未初始化
  4 function testFunc(){5 }6 alert(typeof testFunc());7
  都将返回undefined。
  注意:如果写成alert(typeof testFunc)将会返回function。因为这里返回的是该名称的类型而不是函数值。
  2、 未声明变量不能参与任何操作或运算。
  1 var oTemp;2 alert(undefined==oTemp); //返回true
  3 alert(undefined==oTemp2); //未声明的变量做比较返回“变量未定义”的错误信息
  4 alert(oTemp+"aa"); //返回“undefinedaa”
  5 alert(oTemp2+"aa"); //返回“变量未定义”的错误信息
  (Number类型)
  1、 所有整数可以被表示为十进制,八进制或十六进制。
  var iNum=55; //十进制数据
  var iNum=070; //八进制数据,在前面加一个0,070代表十进制56
  var iNum=0xab; //十六进制数据,在数字前加0x,0xab代表十进制171
  2、 尽管所有整数可表示为八进制或十六进制,但所有数学运算都返回十进制。
  如上述定义的变量用alert()输出时都是十进制数据。
  3、 要定义浮点数,必须包括小数点和小数点后的一位数字。(如用1.0而不是1)
  4、 对于非常大或非常小的数,可以用科学计数法表示(数字加e或E,后加乘以10的倍数)。
  var fNum=3.125e7 表示31250000,fNum1=3e-7表示0.0000003。
  5、 ECMAScript默认将具有6个或6个以上前导0的浮点数转换为科学计数法。
  6、 所有ECMAScript的数都必须落在Number.MAX_VALUE(约为1.79769E308)和Number.MIN_VALUE(约为5E-324)值之间。但计算生成的数值结果可以不落在这个范围之间。
  7、 可以调用isInfinite()判断一个数是否是一个有效数字。
  isInfinite(Number.MAX_VALUE); //返回true
  isInfinite(2*Number.MAX_VALUE); //返回false
  8、 一个特殊值NaN(非数),常发生在类型(String,Boolean等)转换失败时。
   注意:它与自身不相等。如alert(NaN==NaN)输出false。所以不推荐使用NaN本身,而使用isNaN来判断。alert(isNaN("blue"))输出true,alert(isNaN("123"))输出false

本文转自
http://www.cnitblog.com/yemoo/archive/2007/01/06/21590.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值