zoukankan      html  css  js  c++  java
  • 面向对象

    1.作用域:堆内存和占内存。     JS代码在执行之前,浏览器会给他一个全局作用域叫window,每个作用域下分两个模块,一个是执行模块,一个是内存模块。内存模块会给所有的变量一个内存地址。变量的声明在js中靠关键字var和function。

    2.什么时候还有作用域的形成?

      浏览器天生有一个全局的就window

      函数执行的时候会形成一个私有的

    JS在执行之前,浏览器会给一个全局作用域叫window,在window下分两个模块,一个是内存,一个是执行,内存会找到所有的关键字var 和function对变量进行提前声明(这个功能叫变量提升)给每个变量分配一个内存地址。在执行模块遇到变量首先会在自己的作用域下通过内存地址去查找这个变量是否存在,如果有就直接操作,没有就向他的上一级作用域的内存模块查找,如果有就操作,没有就继续向上查找,知道window,这种查找机制叫作用域链。

    3.= 赋值运算

      1.赋值运算,就是把后面的数据赋值给等号前面的变量。

      后面的数据分两种情况

      2.后面是简单的基本数据类型 number string boolean null undefined 直接就是将数据赋给前面的变量。

      3.后面的如果是复合数据类型 array object function 将内存地址赋值给前面的变量。

    4.object和json二者

      1.长的一样,都以键值对的形式书写,object的key可以不加引号,但是json必须加。

      2.object是前端的数据类型,json是数据库存放的数据格式。

    5.object 对象

      1.对象的定义。

      2.类和实例的关系

        1.每个类(函数)都有一个prototype的属性,这个属性是一个对象,里面有一个constructor的属性,属性值就是这个类本身。

        2.每个实例(对象)都有一个__proto__的属性,这个属性也是一个对象,它指向当前类的原型。

        3.prototype和__proto__二者都叫原型,前者是存放属性的对象,后者是查找属性的,前者给开发者使用,后者给浏览器使用。

     

      

     

     

  • 相关阅读:
    asp.net程序集冲突解决笔记(未能加载文件或程序集"XXXXXXXXX")
    让Asp.net mvc WebAPI 支持OData协议进行分页查询操作
    jQuery Select 自动选择默认值
    nuget在jenkins上不能自动还原项目依赖包---笔记
    Ubuntu 14.04 server ssh 远程服务遇到的一点事儿
    Unbunt vi 编辑器键盘按键不正确的一次经历与解决方案
    Ubuntu root 密码 sudo passwd
    Visual Studio 2015 下 编译 libpng
    .NET使用Com组件的一点点教训笔记~
    Linux透明大页(Transparent Huge Pages)对ES性能对影响
  • 原文地址:https://www.cnblogs.com/wangzhen1012/p/10210754.html
Copyright © 2011-2022 走看看