日期:2014-05-16 浏览次数:20501 次
1. 正则表达式的定义
在 JavaScript 中,正则表达式由 RegExp 对象表示。当然,可以使用 RegExp() 构造函数创建 RegExp 对象,不过通常还是用特殊的直接量语法来创建 RegExp 对象。就像字符串直接量被定义为包含在引号内的字符一样,正则表达式直接量也被定义为包含在一对斜杠( / )之间的字符。所以, JavaScript 可能会包含如下的代码:
var pattern = /s$/;
2. 正则表达式直接量字符
字符 |
匹配 |
字母数字字符 |
自身 |
\o |
NUL 字符 (\u0000) |
\t |
制表符 (\u0009) |
\n |
换行符 (\u000A) |
\v |
垂直制表符 (\u000B) |
\f |
换页符 (\u000C) |
\r |
回车 (\u000D) |
\xnn |
由十六进制数 nn 指定的拉丁字符,例如, \x0A 等价于 \n |
\uxxxx |
由十六进制 xxxx 指定的 Unicode 字符,例如, \u0009 等价于 \t |
\cX |
控制字符 ^X 。例如, \cJ 等价于换行符 \n |
3. 方法 apply() 和 call()
ECMAScript 规范给所有函数定义了两个方法 call() 和 apply() 。使用这两个方法可以像调用其他对象的方法一样调用函数。 call() 和 apply() 的第一个参数都是要调用函数的对象,在函数体内这一参数是关键字 this 的值。 call() 的剩余参数是传递给要调用的函数的值。例如,要把两个数字传递给函数 f() ,并将它作为对象 o 的方法调用,可以使用如下的代码:
f.call(o, 1, 2);
这与下面的代码类似:
o.m = f;
o.m(1, 2);
delete o.m;
apply() 方法和 call() <