李锋涛

石看纹理山看脉,人看志气树看材

  • 主页
所有文章 友链 关于我

李锋涛

石看纹理山看脉,人看志气树看材

  • 主页

js高级-面向对象(一)

2018-09-17

一:面向对象

1 面向对象:使用对象时,只关注对象提供的功能,不关注内部细节。
2 js对象的组成:方法和属性

面向对象与面向过程的异同

面向过程:所有的细节、步骤、过程要一步步亲历亲为(执行者)
面向对象:找到能完成这个事情的对象,让它帮你完成(调度者)
面向对象是对面向过程的封装。

全局污染

1 使用大量函数无法管理
2 在全局范围内有效

二:创建对象

1 对象是键值对的集合
例:var p = {
    name: "jim",
    age: 19,
    sex: "男",
    sayHello: function() {
        alert("你好,哈哈哈哈");
    }};
 p.sayHello();p["sayHello"](); // 关联数组
 缺点:无法复用

 2 构造函数   优点:可以复用
 构造函数使用注意点:
 1) 函数名以大写字母开头(推荐)
 2)不需要返回值
 3)为对象添加成员使用: this.成员名=值;
 4) 创建对象使用new 关键字
 例:var Person = function() {
        this.name = "jim";
        this.age = 19;
        this.gender = "男";
        this.sayHello = function() {
            alert("你好,哈哈哈哈");
        };};
        // 创建对象(构造函数Person的对象)var p = new Person();// 访问对象的 属性console.log(p.name);
        // 访问对象的方法p.sayHello();

三:原型

1 原型的概念:函数对象的prototype属性所引用的对象。
2 原型 的本质就是 对象;一般函数 都有prototype属性,也就是说函数都有原型。
3 声明一个函数时,原型就随之而产生。此时默认原型 是一个空对象。但是具有一个默认的属性constructor,该属性指向其构造函数.
4 在原型上的成员(属性和方法),都可以直接被其实例访问.

获取原型的方式

1 通过函数 : <fnName>.prototype
2 通过对象:<object>.\__proto__

proto 与 prototype的区别

1 _proto_是一个非标准的属性
2 对象的_proto_与创建它的构造函数的prototype是一个东西
3 prototype是原型属性
_proto_与prototype的异同
相同点:这两个都是属性,存储的是对象是引用,这两个属性的引用指向了同一个对象

不同点:
        站在不同的角度新看这两个属性:
    prototype是站在构造函数的角度
    _proto_是站在对象的角度,是非标准属性
    原型属性和原型对象,是同一个东西,只是站在不同的角度去看一个东西,对它的不同叫法。
赏

谢谢你请我吃糖果

  • js

扫一扫,分享到微信

微信分享二维码
react项目中遇到的一些问题
js基本类型和引入类型的区别
© 2018 李锋涛
Hexo Theme Yilia by Litten
  • 所有文章
  • 友链
  • 关于我

tag:

  • AngularJs
  • css
  • css3
  • js
  • Gulp
  • html5
  • react
  • Vue
  • bootstrap
  • css 布局
  • github
  • hexo
  • git
  • html
  • jQuery
  • webpack
  • ES6
  • app
  • hexo+github

    缺失模块。
    1、请确保node版本大于6.2
    2、在博客根目录(注意不是yilia根目录)执行以下命令:
    npm i hexo-generator-json-content --save

    3、在根目录_config.yml里添加配置:

      jsonContent:
        meta: false
        pages: false
        posts:
          title: true
          date: true
          path: true
          text: false
          raw: false
          content: false
          slug: false
          updated: false
          comments: false
          link: false
          permalink: false
          excerpt: false
          categories: false
          tags: true
    

  • 阮一峰
很惭愧

菜鸟一枚
笔记只为自己参考学习