1. 面向对象

Js一开始就是写网页特效,面向过程的,作者发现这样写不好,代码重复利用率太高,计算机内存消耗太大,网页性能很差。所以作者就收到java和c的影响,往面向对象靠齐。Js天生有一个Object,但他没有面向对象的特征(封装,继承,多态)。最后研究出了构造函数。

构造函数最终目的是生成对象。

我们把封装的那个函数叫 类

类里面的属性是私有的。

类原型上的属性是公有的,可继承的。

1. 类身上天生自带一个prototype的属性,属性是对象

2. Prototype对象天生有一个constructor属性,属性值就是类本身

3. 实例天生有一个__proto__ 指向你自己类的原型

原型链主要针对对象的属性来说的

作用域链主要针对变量来说的

var a和a的区别

没有带var的变量就不能存放到内存地址中。就没有变量提升这种说法了。相当于给window加了一个属性window.a。

带var 可以存放在内存地址中,有变量提升,同时也相当于给window加了一个属性window.a

转载于:https://www.cnblogs.com/xyangjie/p/9911005.html

1102面向对象和类原型相关推荐

  1. JS 面向对象编程、原型链、原型继承(个人学习总结)

    一.面向对象 1. 面向对象 是所有语言 都有的一种编程思想,组织代码的一种形式 基于对象的语言:JS语言 面向对象的语言:c++ java c# 2. 面向对象 3大特征 封装:将重用代码封装到函数 ...

  2. php面向对象程序设计,PHP面向对象程序设计类的定义与用法简单示例

    本文实例讲述了PHP面向对象程序设计类的定义与用法.分享给大家供大家参考,具体如下: class Person { private $name; private $sex; private $age; ...

  3. 面向对象(类的概念,属性,方法,属性的声明,面向对象编程思维

    1 面向对象 1.1 你是如何认识新事物的? 从过往的事物中总结事物的特点(特征),并比对新事物,把新事物进行归类. 1.2 类(Class)的概念(A) 类是对一组具有相同特征和行为的对象的抽象描述 ...

  4. python定义一个类和子类_Python面向对象class类属性及子类用法分析

    本文实例讲述了Python面向对象class类属性及子类用法.分享给大家供大家参考,具体如下: class类属性 class Foo(object): x=1.5 foo=Foo() print fo ...

  5. 面向对象的类测试技术研究

    面向对象的类测试技术研究 摘要:类是面向对象软件的基本构成单元,类测试是面向对象软件测试的关键.从基于服务的.基于对象动态测试模型的.基于流图的以及基于规约的四个方面论述了类测试的思想和方法. 关键词 ...

  6. python编程语言继承_Python面向对象程序设计类的封装与继承用法示例

    本文实例讲述了Python面向对象程序设计类的封装与继承用法.分享给大家供大家参考,具体如下: 访问限制(封装) 1.概念 面向对象语言的三大特征:封装, 继承, 多态. 广义的封装: 类和函数的定义 ...

  7. Golang面向对象之-类

    Golang支持面向对象编程,支持基本的继承,封装,接口等基本概念,也很容易实现,但是Golang是一种松散的面向对象,约束远没有java,c++那么严格,Golang 可以用结构体来模拟类,并给结构 ...

  8. 面向对象的类、方法和对象

    面向对象 第一章 你要学的重点知识点 类和对象 构建方法 访问权限 继承 多态(最重要) 抽象和借口 内存分析 其他知识点不是不重要,相对而言,最重要的是上面这几个 第二章 类和对象 画图纸 定义车的 ...

  9. Python 入门 —— Python 面向对象:类的创建及其基本内置方法的使用

    Python 面向对象:类的创建及其基本内置方法的使用 首先了解一下什么是面向对象 面向过程: 就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了. ...

最新文章

  1. Flash Builder 4.7 类模板编辑设置
  2. 初探HTML5的本地存储
  3. 《区块链开发指南》一一第1章 区块链基础
  4. IBASE component valid to field
  5. c语言结构体位定义,C语言结构体位域
  6. AS3 调用外部SWF中元件库中的元件 【转】
  7. Tensorflow c api
  8. c语言中整型数组如何初始化,C语言数组空间的初始化详解
  9. SQL 增删改查语句
  10. java题库组卷系统_基于java的题库管理系统.doc
  11. MFQPPDCS测试理论(海盗派测试分析)
  12. hdu_5145_NPY and girls(莫队算法+组合)
  13. 强化学习之贝尔曼方程
  14. oracle vm 鼠标切换,VirtualBox的Linux虚拟机文本模式和图形模式的切换问题
  15. epub格式电子书制作工具——ep…
  16. linux usleep占用cpu,[RK_2014_0918]linux下,测试usleep函数对CPU占用率的影响
  17. National.Geographic.100.Years.国家地理百年纪念典藏
  18. 基于遗传算法的BP神经网络优化
  19. android获取一天的毫秒时间,Android关于获取时间的记录(小结)
  20. 全网最细华为路由器mpls 虚拟专用网络intranet 组网配置

热门文章

  1. Cesium 中两种添加 model 方法的区别
  2. MaperReduce实验
  3. IntelliJ IDEA 中的 project 和 module 与Eclipse中workspace和project的关系
  4. self.a 和 _a 的区别
  5. UNIX网络编程——客户/服务器程序设计示范(一)
  6. 摩托罗拉指控苹果iPhone 4S和iCloud侵犯6项专利
  7. 计算机桌面文件管理窗口,隐藏Win10此电脑窗口的6个额外文件夹
  8. bash、dash(/bin/bash和/bin/sh)
  9. Golang 随机获取本机可用端口
  10. leetcode算法题--反转字符串