博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
面向对象
阅读量:5976 次
发布时间:2019-06-20

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

作用域

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

堆内存:存放代码的空间,存放方式(键值对的形式存,以字符串的形式存)

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

2.什么时候会有作用域的形式?

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

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

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

变量命名冲突

如果普通变量和函数变量相同最后保留函数变量

3.=赋值运算

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

  后面的数据分俩种:1后面是简单的基本数据类型:number;string;Boolean;undefined;直接赋值给前面的变量

  2:如果后面的是复合数据类型:array;object;function;将内存地址赋给前面的变量

4.object和json二者

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

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

5.object对象

  1.对象的定义

    自变量定义 var object={name:“张三”}

    类的实例: var obj=new object()obj.name=“张三”

    类的本质是function

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

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

    3.prototype和__proto__

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

转载于:https://www.cnblogs.com/zzz035921/p/10208234.html

你可能感兴趣的文章
TCP-IP 学习(三) TCP
查看>>
对比两个无序整形数组相似度问题算法
查看>>
批量有效地修改package名
查看>>
android或ios app请求参数格式
查看>>
Camera Vision - video surveillance on C#
查看>>
如何理解网络连接中的"3次握手"?
查看>>
使用Dubbo服务出现java.io.IOException: invalid constant type: 18异常解决办法
查看>>
PYKit目录
查看>>
JSON使用总结
查看>>
php-redis中文帮助手册_系统相关_config_eval_evalSha_script...
查看>>
Tomcat Context配置
查看>>
CentOS6.5安装ntopng
查看>>
mysql事务rollback&commit
查看>>
Node.js搭建Web服务器
查看>>
实现Instagram的Material Design概念设计
查看>>
php5.3安装oracle的扩展oci8与pdo_oci
查看>>
发送超长短信的协议格式
查看>>
CentOS 6.x 快速安装L2TP ***
查看>>
mysql主主复制(双主复制)配置步骤
查看>>
一篇文章能够看懂基础源代码之JAVA篇
查看>>