JavaScript学习系列(二)ECMAScript基础一
JavaScript学习(二)ECMAScript基础
一、语法。
(1)区分大小写。
(2)弱类型。
(3)语句末的分号可以省略,不过不能破坏语句的含义。
(4)//单行注释。/*………….*/多行注释。
Javascript变量是弱类型的。不必在声明的时候指定变量的类型。声明变量语法var 变量名 [=][value];
因为javascript是弱类型的。所以同一个变量可以存放不同类型的值。不过后面的值要能转换成前面类型的值。如
Var test=55;
test=“hk”
Alert(test); output: hk.
合法的变量名以字母、下划线、美元符号$开始。
二、原始值和引用值
JavaScript 中有五种原始值,Null. Undefined, Number, String和Boolean.原始值存放在变量的存储地址中,也就是存放在栈中。引用值是存储在队列中的对象。因为原始值的长度是不变得,存储在战中便于查找,而引用值的长度是可变的所以不能存储在栈中。
三、原始类型
1、Null类型
Null类型只有一个值就是Null,Null是不存在的对象。
2、Undefined类型
Unfined类型是JavaScript中只有一个值的类型的另一个(另一个为Null),它也只有一个值就是Unfined。Unfined代表没有被赋值的变量。
3、String类型
String的独特之处在于它是唯一没有固定长度的原始值,它是由0或更多个Unicode字符组成的。String类型的值用””或’’括起来。
4、Number类型
JavaScriopt的Number既可以表示32位整型数也可以表示64位浮点数。
5、Boolean类型
有true和false两个值。
原始类型之间的转换
1、 Number类型的原始值可以直接转换成String类型的值(隐式转换)
Var str=55
Output“55”
Boolean类型的转换成string类型
True转换true false转换为fasle
还可以调用tostring()方法进行转换。
2、 转换成Number类型
主要是string类型和boolean类型
String类型的值逐一检查字符串的每一个字符,直到遇到第一个不是数字的字符,就把这个字符之前的串转换为Number类型的值,后面的忽略。
Boolean类型 true为1false为0
parseInt()、parseFloat()和Number()转化
parseInt()和parseFloat()只用于转换字符串,其他类型的值将不能被转换,一律返回NaN
parseInt()方法从字符串的第一个字符起检测要转换对方字符串,如果第一字符是能够转换的字符,就接下去检测第二个字符,知道发现不是数字的字符,就把这个字符之前的字符串转换成整数。parseInt()可以转换以二进制、八进制、十进制和十六位进制表示的字符串为整数。
parseFloat()只能把十进制表示的字符串转换成浮点数,而且第一个出现的小数点是有效的。
Number()和parseInt()的不同
(1) Number()不只用于string类型的值转换成数字。
(2) Number() 是将字符串整体转换成数字,而parseInt()和parseFloat()是将字符串的一部分或者整体转换成数字。
Number(true)=1; parseInt(true)=NaN;
Number(false)=0; parseInt(false)=NaN
Number(null)=0; parseInt(null)=NaN
Number(undefined)=NaN; parseInt(undefined)=NaN
Number(“5.5”)=5.5; parseInt(“5.5”)=5.5 parseFloat(“5.5”)=5.5
Number(“5.5.54”)=5.5 parseInt(“5.5.54”)=5.5 parseFloat(“5.5.54”)=5.5
Number(new object)=NaN; parseInt(new object)=NaN;