js正则表达式和js自定义对象

涉及知识点:
1.js正则表达式;
2.js this关键字;
3.js自定义对象。

部分内容摘自菜鸟教程

一、js正则表达式
1.正则表达式概念:
正则表达式描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。
2.非打印字符:
①\cx :匹配键盘的。x 的值必须为 A-Z 或 a-z 之一。
②\f :匹配换页符。等价于 \x0c 和 \cL。
③\n :匹配换行符。等价于 \x0a 和 \cJ。
④\r :匹配回车符。等价于 \x0d 和 \cM。
⑤\s :匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。
⑥\S :匹配任何非空白字符。等价于 [^ \f\n\r\t\v]
3.特殊字符:
特殊字符,即一些有特殊含义的字符。
①$ :匹配输入字符串的结尾。若匹配 $ 字符本身,使用 \$
②( ) :标记子表达式的开始和结尾。若匹配()字符,使用 \( \)
③* :指匹配前面的子表达式0次或多次。若匹配 * 字符,使用 \*
④+ :指匹配前面的子表达式1次或多次。若匹配 + 字符,使用 \+
⑤. :匹配除换行符 \n 之外的任何单字符。若匹配 . ,使用 \.
⑥[ :标记一个中括号表达式的开始。若匹配 [,使用 \[
⑦? :匹配前面的子表达式0次或1次,若匹配 ? 字符,使用 \?
⑧\ :匹配一些转义或者单字符、或者原义字符,若匹配\,使用\\
⑨^ :匹配输入字符串的开始,当在中括号中使用时,表示非。若匹配 ^ 字符本身,使用 \^
⑩{ :表示限定符表达式的开始。若匹配 {,请使用 \{
⑪| :指明两项之间的一个选择,即或者。若匹配 |,请使用 \|
4.限定符:
限定符用来指定正则表达式的一个给定组件必须要出现多少次才能满足匹配。有 * 或 + 或 ? 或 {n} 或 {n,} 或 {n,m} 共6种。
①* :匹配前面的子表达式0次或多次。* 等价于{0,}。
②+ :匹配前面的子表达式1次或多次。+ 等价于 {1,}。
③? :匹配前面的子表达式0次或1次。? 等价于 {0,1}。
④{n} :n 为非负整数。匹配前面的表达式n次。
⑤{n,} :n 为非负整数。至少匹配n 次。即匹配前面的子表达式n次或者多次。
⑥{n,m} :m 和 n 为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次。注意在逗号和两个数之间不能有空格
5.定位符:
定位符使能够将正则表达式固定到行首或行尾。
①^ :匹配输入字符串的开始。
②$ :匹配输入字符串的结尾。
③\b :匹配的是单词边界,即字与空格间的位置。
④\B :匹配的是非单词边界。
6.元字符:
\d :匹配一个数字字符。等价于 [0-9]。
\D :匹配一个非数字字符。等价于 [^0-9]
\w :匹配字母、数字、下划线。等价于[A-Za-z0-9_]。
\W :匹配非字母、数字、下划线。等价于 [^A-Za-z0-9_]
二、js this关键字:
面向对象语言中 this 表示当前对象的一个引用。
(1)在方法中,this 表示该方法所属的对象。
在对象方法中, this 指向调用它所在方法的对象。

var person = {
  Name: "张三",
  age: 13,
  eat : function() {
    return this.Name + "吃饭" ;
  }
};

this 表示 person 对象。eat方法所属的对象就是 person。
(2)在浏览器中,window 就是该全局对象为 [object Window].
(3)事件中的this:
HTML 事件中,this 指向了接收事件的 HTML 元素:

<button οnclick="this.style.display='none'">
点我后我就消失了
</button>

三、js中自己定义对象:

1.自己定义对象
(1)

var person = new Object();//使用new创建一个新的对象,对象为引用类型
 person.name = "张三";//设置属性
 person.age = 13;
 person.eat = function () {   //设置对象的方法
        return this.name + "吃饭";
    }
 console.log(person);

(2)

var cat = {
        name: "小花",
        age: 2,
        sex: "母",
        eat: function () {
            return this.name + "吃鱼";
        }
    };
    console.log(cat);

(3)Object.create
参数写null,无_proto_属性;

 var dog=Object.create(null);
 console.log(dog);//No properties

参数写成一个对象,就是当前对象 的_proto_ 属性指向参数对象

var pig=Object.create(animal); //pig这个对象的_proto_属性指向animal对象
console.log(pig);
pig.name="花花";
pig.color="黑色";
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值