面向对象编程
静态成员和动态成员
实例成员:在构造函数内部添加给this的成员,属于实例对象成员,在创建实例对象后必须又对象调用。
静态成员:添加给构造函数自身的成员,只能用构造函数调用,不能使用生成的实例对象调用。
prototype原型对象
任何函数都有一个prototype属性,该属性是一个对象。
可以在原型对象上添加属性和方法。
构造函数的prototype对象默认都有一个constructor属性。指向他对象所在的函数
通过构造函数得到实例对象内部会包含一个指向构造函数的prototype对象指针_proto_.
实例对象可以直接访问原型对象成员。
继承
call方法:
1.更该当前函数内部的this指向
2.正常调用函数
参数:一个用来指定this,第二个及其以后就是传参作用。
正则表达式
正则表达式方法
split方法:分隔字符串,成为一个数组
var str="bbaabbbnnnaannnmak";
var arr2=str.split(/a+/);
利用字母a对字符春进行分割(一个a及其以上)
search方法:查询子串在父字符串中出现的位置。
var str="abcdfrg";
var arr2=str.search(/df/);
match方法:在父字符串中去匹配相符合的字符串,将结果输出早数组中。
var str="abbccbbbbbssbbdddtt";
var arr=str.match(/b+/g);(在全局中找到所有匹配的字符串,不加g则匹配当前第一个)
replace方法:替换字符串的指定部分,返回值是一个替换后的字符串,原始字符串不受影响。
var str="www.hello.com";
var str1=str.replace(/hello/,"byebye");
exec方法:查找匹配的字符串,输出到数组中(无视全局修饰符g)
var str="aaabbcccbabcbdabd";
var arr=/abc/.exec(str);
text方法:检测字符串中是否满足正则表达式的匹配规则,返回值是布尔值。
var str="aaabbcccbabcbdabd";
var arr=/abc/.text(str);
正则表达式的组成
特殊字符:() [] {} \ ^ $ | ? * +
如果想匹配这类字符必须用转移符号\
预定义特殊字符:
\t /\t/ 制表符
\n /\n/ 回车符
\f /\f/ 换页符
\b /\b/ 空格