1、数字:
JavaScript不同于其他语言的一个特点是它不区分整型数值和浮点型数值,所有的数字都由浮点型表示。它采用IEEE754标准定义的64位浮点格式表示数字。
整型直接量
八进制和十六进制的直接量(并非所有的JavaScript都支持八进制数值)
浮点型直接量
数字的使用(除运算符外还采用了大量的算术函数,这些函数都被保存在Math对象中,作为Math对象的属性使用)
特殊的数值常量列表如下
Constant | Meaning |
---|---|
Infinity | Special value to represent infinity |
NaN | Special not-a-number value |
Number.MAX_VALUE | Largest representable number |
Number.MIN_VALUE | Smallest (closest to zero) representable number |
Number.NaN | Special not-a-number value |
Number.POSITIVE_INFINITY | Special value to represent infinity |
Number.NEGATIVE_INFINITY | Special value to represent negative infinity |
JavaScript中的字符串包含在单引号或双引号中,在JavaScript中没有char字符类型,而是用长度为1的字符串来表示字符。
字符串直接量
字符串直接量中的转义序列(字符串本身包含了单引号或双引号的情况,就要用到转义字符,如“/'”或“/"”)
JavaScript的转义序列
Sequence | Character represented |
---|---|
/0 | The NUL character (/u0000). |
/b | Backspace (/u0008). |
/t | Horizontal tab (/u0009). |
/n | Newline (/u000A). |
/v | Vertical tab (/u000B). |
/f | Form feed (/u000C). |
/r | Carriage return (/u000D). |
/" | Double quote (/u0022). |
/' | Apostrophe or single quote (/u0027). |
// | Backslash (/u005C). |
/xXX | The Latin-1 character specified by the two hexadecimal digits XX. |
/uXXXX | The Unicode character specified by the four hexadecimal digits XXXX. |
/XXX | The Latin-1 character specified by the octal digits XXX, between 1 and 377. Not supported by ECMAScript v3; do not use this escape sequence. |
字符串的使用(连接字符串+,字符串长度length属性从0开始索引)
数字转换为字符串
binary_string = n.toString(2); //所求值为 "10001"
octal_string = "0" + n.toString(8); // 所求值为 "021"
hex_string = "0x" + n.toString(16); // 所求值为 "0x11"
var n = 123456.789;
n.toFixed(0); // "123457"
n.toFixed(2); // "123456.79"
n.toExponential(1); // "1.2e+5"
n.toExponential(3); // "1.235e+5"
n.toPrecision(4); // "1.235e+5"
n.toPrecision(7); // "123456.8"
字符串转换为数字
parseInt("3 blind mice"); // Returns 3
parseFloat("3.14 meters"); // Returns 3.14
parseInt("12.34"); // Returns 12
parseInt("0xFF"); // Returns 255
parseInt("ff", 16); // Returns 255 (15*16 + 15)
parseInt("zz", 36); // Returns 1295 (35*36 + 35)
parseInt("077", 8); // Returns 63 (7*8 + 7)
parseInt("077", 10); // Returns 77 (7*10 + 7)
parseInt("eleven"); // Returns NaN
parseFloat("$72.47"); // Returns NaN
4、函数:
函数(function)是一个可执行的JavaScript代码段,包括用户自定义函数和JavaScript预定义函数。
JavaScript函数相对于其它语言的一个重要特性是,JavaScript中的函数是一个真正的数据类型,这就意味着函数可以被存储在变量、数组和对象中,还可以作为参数传递个其它函数。
我们在定义函数时,除了用传统的:
function name(param,){ …… }
还可以用JavaScript特有的函数直接量的方法,这在某些高级脚本中非常有用:
var name = function(param,){ …… }
5、对象:
有着面向对象语言基础的程序员来说,一定知道对象就是数据的集合。JavaScript中的对象,其属性包括了存储在其中的变量和函数方法。这些属性都可以通过对象来调用(非常类似于Java)。
JavaScript中的对象可以作为关联数组使用,因为它们能够将任意的数据值和任意的字符串关联起来。如果采用这种方式使用对象,访问对象的方法要 使用一个由方括号封闭起来的、包含所需属性名的字符串。如访问image对象的width和height属性:iamge["width"];image ["height"]
ECMAScript v3定义了对象直接量的语法,使你能够创建对象并定义它的属性。对象直接量由一个由花括号中的列表构成,这个列表的元素是用冒号分隔的属性/值对,元素之间用逗号隔开。
如定义一个point对象:
var point={x:2.3,y=1.3}
对象直接量也可以嵌套,如:
var rectangle = {upperleft:{x:2,y:2},lowerright:{x:4,y:4}}
其中属性值不必是常量,也可以是任意的JavaScript表达式。
JavaScript中,要获得数组中的值,可以使用数组名,加上用方括号封闭起来的下标值。数组的下标从0开始。(这些都和Java数组一样)数组可 以存放任何一种JavaScript数据类型,包括其它数组、对象或函数的引用。由于JavaScript是一种无类型语言,因此数组元素不必具有相同的 数据类型。
数组的创建方法如下:
var a = new Array();
a[0] = 1.2;
a[1] = "JavaScript";
a[2] = true;
a[3] = {x:1,y:3};
var b = new Array(1.2,"JavaScript",true,{x:1,y:3});
var c = new Array(4);
数组直接量的定义与对象直接量定义类似,也可以嵌套,其属性值不必是常量:
var d = [1.2,"JavaScript",true,{x:1,y:3}];
而且数组直接量中还可以存放未定义的元素:
var e = [1,,,,5];
7、null
8、undefined9、日期对象Date Date( )来创建
10、正则表达式对象 RegExp( )来创建
11、错误对象Error