博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
前端基础17:对象/实例/原型
阅读量:7089 次
发布时间:2019-06-28

本文共 1096 字,大约阅读时间需要 3 分钟。

面向对象

单例模式

最开始JS语言并没有引用数据类型,只有基本数据类型。会产生全局变量污染(冲突)问题 代码的可扩展性 在我们需要操作一个的name和age的时候,我们并不知道之后会不会还有其它的人需要加入进来,如果我们直接用name和age变量,之后会很难维护 所以我们可以用一个对象将其封装起来

模块化开发

百度首页

我们分成以下几个模块 一般我们一个文件就是一个模块 主页面模块 入口文件(index) 搜索设置模块 searchModel 天气模块 wearthModel

var searchModel = {}// 这两个可能是在不同的文件var wearthModel = {}复制代码

对象是将描述同一事物的属性和方法合并,这也是单例模式的使用 将函数的参数以一个对象的形式传递,也是使用了单例模式的思想

高级单例模式

高级单例模式就是融合了其他设计模式(发布订阅模式,promise) 去写的代码 如下就是单例模式和闭包思想的融合,就是高级单例模式

function fn1() {return {}}var data = fn1()复制代码

工厂模式

就是将实现某一项功能的代码封装成一个函数,下次再需要实现这个功能的售后调用这个函数即可 高内聚低耦合减少页面不必要代码,提高代码利用率

面向对象

面向过程 C 面向对象 java php c++ JavaScript

对象 类 实例

万物皆对象,我们研究的所有东西都是对象 类 对象的具体划分 比如说 马类 人类 植物类 实例 某一类中的具体实物 人中的你我他

JS中的内置类

  • Number
  • String
  • Boolean
  • Null
  • Undefined
  • Object
  • Array
  • RegExp
  • Date
  • Function

元素集合类

  • NodeList

Null 和 Undefined 浏览器禁止我们操作 document

基于面向对象创建数据类型

面向对象创建引用数据类

使用面向对象的方式创建数组 当参数多于1的时候,和字面量方式没有区别 但是只有一个参数的时候面向对象方式创建的数组结果就是长度为参数,然后每个值都是空

原型

每一个函数(类)都有一个prototype属性,存储的是给当前类使用的共有的属性和方法。prototype是一个对象,浏览器默认给他开辟堆内存 每一个prototype都有一个默认属性constructor指向类本身 每一个实例(对象),都有一个__proto__属性,指向所属类的原型

转载于:https://juejin.im/post/5b94e6e8e51d450e8d762c65

你可能感兴趣的文章
驱动开发利器Microsoft Windows Driver Kit 7.1.0下载
查看>>
maven_项目的依赖、聚合、继承
查看>>
一个C++类的注释:
查看>>
Winsock IO模型之select模型
查看>>
开发规范
查看>>
PHP json_decode object时报错Cannot use object of type stdClass as array
查看>>
hibernate一对一外键双向关联
查看>>
SharePoint 2013 同步FBA认证用户
查看>>
二叉树的遍历实现
查看>>
Sublimetext 3 经常使用插件
查看>>
flutter安装开发环境-问题记录
查看>>
第十四课时: 登录/登出以及JWT认证
查看>>
渲染机制/页面性能/错误监控
查看>>
Dom中高big 事件总结(持续更新中)
查看>>
Immutable.js 源码解析 --List 类型
查看>>
【修真院“善良”系列之十六】代码结构中Dao,Service,Controller,Util,Model是什么意思,为什么划分...
查看>>
js数据结构-栈
查看>>
前端构建_webpack
查看>>
Looper源码
查看>>
微信小程序开发系列五:微信小程序中如何响应用户输入事件
查看>>