作用域以及类、实例

栈内存  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

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

 

转载于:https://www.cnblogs.com/gdqx/p/10250327.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值