20200915冯强_日志
学习总结:
正则表达式
正则表达式是规定一个字符串中字符出现规律的规则,专门描述字符串中出现规则的表达式。例如,关键词的原文就是最简单的正则表达式
[abcdef]找方括号之间的任意字符注意:如果 [] 中部分备选字符连续,可用 - 省略中间字符,例如:[a-f] []匹配一个字符
[\u4e00-\u9fa5]匹配一个汉字
负值字符范围。匹配任何不在指定范围内的任意字符。例如,'[a-z]' 可以匹配任何不在 'a' 到 'z' 范围内的任意字符
\d匹配数字
\w匹配一位数字、字母或_,等效于 [A-Za-z0-9_]
\s匹配空白符\S匹配非空白符
字符集量词
有明确数量边界
字符集{n,m} 第一个至少 第二个最多
没有明确边界
?可有可无最多一次
*可有可无,多了不限,相当于{0,}
+最多无限 至少一个
匹配多个字符
子规则1|子规则2
如匹配“微信”,“weixin”,“w x”等情况,并防止中间加空格
(w(ei)?|微)\s(x(in)?|信)
JS中默认为
var reg = /$/ig
效验用test()
面向对象
为了便于大量数据的维护和使用,今后,我们遇到的所有程序都要使用面向对象思想进行开发
面向对象三大特征
封装:创建一个对象,集中存储一个事物的属性和功能。复杂的问题简单化,只考虑功能和结果,不考虑过程和内部细节。比如:jq库的使用
继承:简单来说就是一个对象继承另一个对象的属性和方法。父对象中的成员,子对象无需重复创建,就可直接使用。比如:儿子能继承父亲的姓,孙子也能继承父亲的父亲的姓
多态:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。换句话说是引用类型在不同情况下的多种状态。即为同一事物,在不同情况下,表现出不同的状态。比如:在js中的 ‘+’,在字符串中是拼接作用,在数字中间是加法运算。多态最常见的三种方法:重载,重写,接口
使用对象字面量
var obj={
属性名1 : 属性值1,
属性名2 : 属性值2,
... ,
方法名 : function(){
this.属性名
}}
使用内置构造函数
var lijunfeng={
name:"李俊峰",
age:26
}
// 定义一个函数,接受一个旧对象,克隆出一个一模一样的新对象
function clone(oldObj){
// 1. 先创建一个新的空对象,准备接收旧对象中的属性和属性值/
var newObj={}
// 2. 遍历旧对象中每个属性和属性值
for(var key in oldObj){
// 3. 每遍历旧对象中一个属性,就为新对象强行赋值添加一个同名的新属性,属性值也等于旧对象中当前同名属性的值
newObj[key]=oldObj[key]
}
// 4. 克隆完毕,返回新对象
return newObj;
}
var lijunfeng2=clone(lijunfeng);
console.log(lijunfeng2==lijunfeng)
评论