zoukankan      html  css  js  c++  java
  • javascript高级特性(面向对象)

    javascript高级特性(面向对象):
    * 面向对象:
    * 面向对象和面向过程的区别:
    * 面向对象:人就是对象,年龄性别就是属性,出生上学结婚就是方法.
    * 面向过程:人出生、上学、工作、结婚、生子、去世整个过程.
    * 对象和类的区别:
    * 类:类比作一堆美女.
    * 对象:对象就是范冰冰.
    * javascript的开发工具:
    * WebStrom开发工具,在国内被专业的前端开发人员称之为js神器.
    * 代码提示功能非常强大.
    * javascript的扩展内容:
    * 服务器端开发人员来讲,之前的javascript基础内容够用.
    * javascript高级特性的目的:
    * 在目前服务器端开发人员中,增加竞争力.
    * 面向专业前端开发人员应聘.
    * javascript语言的发展趋势:
    * 每年全球开发语言的排行榜:第7名.
    * 开发客户端、服务器端、移动端(phoneGap)
    * 预测javascript语言可能成为下一代企业级开发语言.
    * 函数:
    * Arguments对象:用来模拟函数重载的效果.
    * 变量的作用域:
    * 作用域:
    * 全局域
    * 函数域
    * 变量:
    * 全局变量:全局域+函数域
    * 局部变量:当前函数域
    * 特殊情况:
    * 定义局部变量时,不使用var:局部变量被定义为全局变量.
    * 当全局变量与局部变量同名时:在函数域中只能访问到局部变量.
    * 特殊的函数:
    * javascript中的函数:
    * 三种定义方式:
    * function 函数名(参数){}
    * var 函数名 = function(参数){}
    * var 函数名 = new Function(参数,函数体);
    * 特殊函数:
    * 匿名函数
    * 回调函数
    * 自调函数
    * 内部函数
    * (了解)返回函数的函数
    * 作用:多用于javascript代码的优化.
    * 原始类型与引用类型:类似于Java中的int与Integer.
    * 原始类型:
    * undefined
    * null
    * number
    * string
    * boolean
    * 引用类型:
    * Object
    * Number
    * Boolean
    * String
    * 问题:
    * if(undefined==null):返回true.
    * new Object();
    * 闭包:非常重要的一个概念.
    * 作用域链:
    * 变量的作用域具有传递性.
    * 闭包:参看笔记.xls文档
    定义:函数可以使用函数之外定义的变量。
    编写的三点需求:同时满足

    需求:
    * 在全局域中可以访问函数n()

    * 在函数n()中依旧可以访问局部变量b

    * 变量b必须定义在函数fn()中


    * 目前不要求大家可以编写闭包结构。

    * 作用:
    * 代码之间的低耦合。
    * 局部变量的共享。
    * 提高安全性。

    * 局限性:
    * n函数的初始化,必须在fn()中
    * 调用函数n,必须先调用fn()

    * 对象:
    * 定义对象三种方式:
    * var 对象名 = new Object();
    * var 对象名 = {key : value, key : value}
    * 函数即对象,函数对象:function 对象名(){}
    * 对象具有属性和方法:
    * 普通对象:
    * 调用:
    * 对象名.属性名;
    * 对象名.方法名();
    * 修改:
    * 对象名.属性名 = 新的属性值;
    * 对象名.方法名 = 新的function
    * 增加:
    * 对象名.新的属性名 = 新的属性值;
    * 对象名.新的方法名 = 新的function
    * 删除:
    * delete 对象名.属性名;
    * delete 对象名.方法名;
    * 函数对象: 又叫构造器 构造函数
    * 在使用函数对象的属性或方法之前,new对象.
    * 内建对象:
    * 数据封装类对象
    * Array
    * new Array() //object
    * [] //object
    * String
    * new String("aaa"); //object
    * "aaa"; //string
    * Object
    * Object是javascript所有对象的父级.
    * 在javascript得到对象最简单形式:new Object()
    * new Object()与var 对象名 = {}等价

    面试题:以下哪个描述是错误的?
    A var a = []; //数组
    B var b = {}; //对象
    C var c = //; //正则表达式 空正则表达式 /^[0-9]{10}$/
    D var d = (); //错误

    面试题:alert("xxxyyy")方法提示框中换行

    * 工具类对象
    * Date
    * xxxx年xx月xx日 hh:mm:ss
    * Math
    * 生成随机数:random(),0-1范围
    var number = parerInt(Math.floor(Math.random() * 4))
    * RegExp
    *匹配方法:test()

    * 错误类对象
    * Error
    * 异常对象:try..catch

    * 原型:非常重要的一个作用.
    * prototype:函数本身就是一个对象,原型就是函数对象的一个属性.
    * 需要注意的是:
    * 创建了函数对象,原型自动创建(不能手动创建).
    * 原型的调用:函数对象.prototype.
    * 作用:
    * 利用原型为函数对象增加属性和方法.
    * 继承:

  • 相关阅读:
    解决Failure to transfer org.apache.maven.plugins:maven-surefire-plugin:pom:2.12.4
    spring task:annotation-driven 定时任务
    Windows注意目录
    vbScript 备忘
    java 将字符串数组变为字典顺序排序后的字符串数组
    jquery选中以什么开头的元素
    java如何将毫秒数转为相应的年月日格式
    jstl foreach 取index
    jQuery 效果
    js判断一个字符串是以某个字符串开头
  • 原文地址:https://www.cnblogs.com/yzybc/p/5737065.html
Copyright © 2011-2022 走看看