zoukankan      html  css  js  c++  java
  • 第78天python JavaScript 变量 作用域 及内存

    javascrip的变量与其他语言的变量有很大区别。JavaScript变量是松散型(不强制类型)本质,决定了它只是爱特定时间用于保存特定值的一个名字而已,由于不存在定义某个变量必须保存何种数据类型值的规则,变量的值及其数据类型可以在脚本的生命周期内改变

    1、变量:

    ECMAScript变量可以包含两种不同的数据类型的值,基本类型值和引用类型值

    基本类型值指的是那些保存在栈内存中的简单数据段,即这种值完全保存在内存中一个位置;

    引用类型值则是指那些保存在堆内存中的对象,意思就是变量中保存的实际上只是一个指针,这个指针指向内存中的另一个位置,该位置保存对象

    2、执行环境及作用域:

    执行环境是JavaScript中最为重要的一个概念,执行环境定义了变量或是函数有权访问的其他数据,决定了他们各自的行为。

    全局执行环境是最外围的执行环境,在web浏览器中,全局执行环境被认为是Windows对象,因此所有的全局变量和函数都是作为window对象的属性和方法创建的

    3、内存问题:

    JavaScript具有自动垃圾收集机制,也就是说,执行环境会负责管理代码执行过程中使用的内存,它会自动管理内存分配及无用内存的回收。不像C和C++,必须手工跟踪内存的使用情况

    JavaScript最常用的垃圾收集方式是 清楚。

    一般来讲,确保占用最少内存可以让页面获得更好的性能,那么优化内存的最佳方案就是一旦数据不再有用,那么将其设置为null来释放引用,这个做法叫做解除引用。这一做法适用于大多数全局变量和全局对象。

  • 相关阅读:
    数据库一直显示恢复中。。记录一则处理数据库异常的解决方法
    MSSQl分布式查询
    ASP.NET MVC中实现数据库填充的下拉列表 .
    理解浮点数的储存规则
    获取 "斐波那契数列" 的函数
    Int64 与 Currency
    学 Win32 汇编[33] 探讨 Win32 汇编的模块化编程
    学 Win32 汇编[34] 宏汇编(1)
    Delphi 中 "位" 的使用(2) 集合
    如何用弹出窗口显示进度 回复 "嘿嘿嘿" 的问题
  • 原文地址:https://www.cnblogs.com/jianchixuexu/p/12268406.html
Copyright © 2011-2022 走看看