昨天内容回顾

  1. 面向对象的私有成员、静态成员

私有成员:在构造函数里边定义局部变量,就是私有成员。

静态成员:在js里边,函数就是对象,可以通过给函数对象声明成员方式声明静态成员。

  1. 原型继承

关键字:prototype

单一成员继承:  函数.prototype.成员名称= 值;

对象继承:函数.prototype = 对象;

原型链继承:许多构造函数可以一一继承,形成一个继承链条,这个链条就是“原型链”

原型链的顶端是Object,对象可以访问的属性constructor、方法 hasOwnProperty() 都是Object对象拥有的。

  1. 复制继承、冒充继承

复制继承:

函数.prototype.extend = function(obj){

遍历obj对象,把这个obj的成员都复制一份给当前的对象cat

}

var  cat = new 函数();

cat.extend(对象);

冒充继承:

function  f1(){}

function  f2(){

f1.call(this);  //通过这种方式把f1函数来执行一次,并且其内部的this被当前对象dog冒充。

}

var dog = new f2();

  1. 异常

try-catch-finally

异常类型:ReferenceError  引用异常  (使用了一个未声明的变量)

RangeError   范围异常  (new  Array(-5))

TypeError    类型异常  (new  10())

自定义抛出异常:throw  {msg:’异常错误信息’,linenumber:错误行号,posnumber:错误列号};

  1. 正则的组成内容、模式修正符

组成内容:

①       普通字符

②       定义字符集 ([0-9]   [a-z]   [pwscv]  [a-zA-Z0-9])

③       特别字符集  +  *   ?    ^   $   \   |

() :小括号,设置模式表达式优先级关系

赛选子级内容出来

模式修正符:

var  reg = /模式内容/模式修正符;

i : 忽略大小写

g :  全局匹配

m : 把被匹配目标字符串当作多行处理(字符串内部有\n关键字)

JS高级学习历程-15的更多相关文章

  1. JS高级学习历程-6

    PHP菜鸟学习历程-6 [闭包案例] 1 闭包创建数组 <!DOCTYPE html> <html lang="en"> <head> < ...

  2. JS高级学习历程-1

    JS高级-34-昨天内容回顾     时间:2015-5-11 1.DOM获取元素节点 document.getElenmentById(id 属性值)                         ...

  3. JS高级学习历程-14

    昨天内容回顾 1. 面向对象的私有成员.静态成员 私有成员:在构造函数里边定义局部变量,就是私有成员. 静态成员:在js里边,函数就是对象,可以通过给函数对象声明成员方式声明静态成员. 2. 原型继承 ...

  4. JS高级学习历程-11

    [继承] 在php,一个类去继承另一个类,本类实例化出来的对象,既可以调用本身类的成员,也可以调用父类的成员. 在javascript继承主要通过原型实现,构造函数继承一个对象,构造函数的实例会拥有被 ...

  5. JS高级学习历程-10

    [面向对象] 面向对象的三大特性:封装.继承.多态 封装:在“类”里边有关键字public.protected.private 对成员进行声明,这样每个成员的访问都会受到不同关键字的限制. 继承:在p ...

  6. JS高级学习历程-8

    2 构造函数和普通函数的区别 两者本身没有实质区别,具体看使用 new  函数();   -------->构造函数 函数();        ---------> 普通函数 <!D ...

  7. JS高级学习历程-5

    [闭包] 定义:闭包就是一个函数 条件:一个函数去嵌套另外一个函数,里边的函数就是闭包 function  f1(){ function f2(){ } } 特点:闭包函数有权访问父级环境的变量信息.

  8. JS高级学习历程-3

    JS-作用域链及作用 [作用域链] 1 什么事作用域链 一个变量,在当前环境可以使用,当前环境的内部环境也可以使用,内部的深层环境...也可以使用,变量在不同环境都可以使用的现象想成了一个链条,称为“ ...

  9. JS高级学习历程-17

    [正则案例] 1 匹配手机号码

随机推荐

  1. Linux (ubuntu和redhat) 常用命令及细节

    1.关闭防火墙(Ubuntu) sudo ufw disable 2.vi 拷贝   参考http://blog.sina.com.cn/s/blog_601331150100ecfr.html 一) ...

  2. SqlServer 按逗号分隔

    SELECT ORDER_ID,LTRIM(MAX(SYS_CONNECT_BY_PATH(GOODS_NAME, ',')), ',') GOODS_NAME FROM (SELECT GOODS_ ...

  3. Spring Boot2.0之热部署原理

    所谓的热部署:比如项目的热部署,就是在应用程序在不停止的情况下,实现新的部署 原理: 实用类加载器(classloader重新读取字节码文件到jvm内存) 如何纯手写一个热部署功能: 1.监听 cla ...

  4. c#使用itextsharp输出pdf(动态填充表单内容,显示中文)

    相关链接: iText的简单应用-字体 c#程序为PDF文件填写表单内容 示例代码: static void Main(string[] args) { BaseFont font = BaseFon ...

  5. Compiling: main.cpp /bin/sh: g++: not found

    Kbuntu用codeblocks编写C程序的时候,编译报错如下: Compiling: main.cpp/bin/sh: g++: not found 解决方法: sudo apt-get inst ...

  6. 获取url的参数

    function getPrams () { var url, urlPrams, urlPramsArr=[], item=[], prams={}; url = location.href; if ...

  7. B1/B2签证的有效期——对于B1/B2签证,停留期最长不超过183天

    一.关于签证有效期首先我们要知道当我们历经困难从签证官手里拿到自己的签证的时候,签证上面有个时间这个我们叫做签证有效期.B1/B2一般是一年多次往返的,这个只跟你申请的签证类型有关,与你填表的时候写的 ...

  8. find命令的基础用法以及按文件修改时间查找文件

    一般文件查找方法: find 命令学好是一件很有趣的事情,也可以帮你在查找系统文件的时候事倍功半,还可以与正则表达式结合使用,功能强大,是一个很好的查找工具.可以整体提高你的系统管理能力. 基础用法 ...

  9. VC++动态链接库(DLL)编程深入浅出:Q&A(原创)

    Q1:extern “C” 是做什么用的? A1:一种情况是多个文件中,变量声明或者函数声明,需要extern “C”,这种情况在这里不做讨论. 在dll工程中,被extern "C&quo ...

  10. 博客和GitHup链接地址

    硕哥博客链接:http://www.cnblogs.com/999-/p/6073601.html 硕哥GitHup链接:https://github.com/xiaodoufu