zoukankan      html  css  js  c++  java
  • 作用域以及类、实例

    栈内存  js执行的环境  (作用域)

    堆内存  存放代码的空间   存放方式     键值对的形式存     字符串的形式存

    作用域的形成:

      浏览器天生有一个全局叫window

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

    作用域链:

      js执行代码之前,浏览器会给他一个全局作用域叫window,在window下会分两个模块 一个内存模块,一个执行模块。 内存模块 会找到所有关键字 var 和function ,并分配给他们一个内存地址;执行模块  浏览器从上到下执行   遇到变量会去内存地址查找这个变量是否存在,如果不存在就是xxx  is   not   defined ,如果存在就看有没有赋值,赋值了就直接操作,没有就去他的上一级的内存模块查找,直到window为止。没有赋值就是undefined。这种查找机制叫作用域链。

    注:如果普通变量和函数变量名相同,最后保留函数变量

    =赋值运算

        赋值运算     就是把后面的数据类型赋值给等号前面的变量。

        数据类型分两种情况

          1、基本数据类型   (number   boolean  string   null  undefined)直接将数据赋值给前面的变量

          2、引用(复合)数据类型 (object  array   function)将内存地址赋值给前面的变量

     object和json的区别

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

        2、object是前段的数据类型    json 是数据库存放的数据格式

     类和实例的关系

        1、每个类都有一个prototype的属性,属性是对象,里面有一个constructor的属性,属性值就是类本身

        2、每个实例对象都有一个__proto__的属性,属性是对象,它指向当前类的原型

     __proto__ 和prototype

      二者都是原型 ,前者是查找属性对的,后者是存放属性的 ,前者是给浏览器使用的,后者是给开发者使用

  • 相关阅读:
    kill -3 导出 thread dump
    JVM中锁优化,偏向锁、自旋锁、锁消除、锁膨胀
    Hibernate validator验证
    java子类实例初始化过程
    spring- properties 读取的五种方式
    Spring连接数据库的几种常用的方式
    缓存使用中的注意事项
    java动态代理原理
    classpath目录
    springmvc常用注解标签详解
  • 原文地址:https://www.cnblogs.com/gdqx/p/10250327.html
Copyright © 2011-2022 走看看