zoukankan      html  css  js  c++  java
  • JavaScript高级程序设计(第三版)第四章 变量,作用域和内存问题

    JavaScript变量可以用来保存两种类型的值:基本类型值和引用类型值。基本类型值和引用类型值具有以下特点:

    • 基本类型值在内存中占据固定大小的空间,因此被保存在栈内存中;
    • 从一个变量向另一个变量复制基本类型值,会创建这个值的一个副本;
    • 引用类型的值是对象,保存在堆内存中;
    • 包含引用类型值得变量实际上包含的并不是对象本身,而是一个指向该对象的指针;
    • 从一个变量向另一个变量复制引用类型的值,复制的其实是指针,因此两个变量最终都指向同一个对象;
    • 确定一个值是哪种基本类型可以使用typeof操作符,而确定一个值是哪种引用类型可以使用instanceof操作符。

    4.1.3 传递参数

     1     <script type="text/javascript">
     2         function addTen(num) {
     3             num += 10;
     4             return num;
     5         }
     6         
     7         var count = 20
     8         var result = addTen(count);
     9         alert(count);    //20
    10         alert(result);   //10
    11 
    12     </script>
    1     <script type="text/javascript">
    2         function setName(obj) {
    3             obj.name = "Nicholas";
    4         }       
    5         var person = new Object();
    6         setName(person);
    7         alert(person.name);    //"Nicholas"
    8     </script>

     4.2.2 没有块级作用域

        <script type="text/javascript">      
            function add(num1, num2) {
                var sum = num1 + num2;
                return sum;
            }     
            var result = add(10, 20);  //30
            alert(sum);     // 由于sum不是有效的变量,因此会导致错误 
        </script>
    1     <script type="text/javascript">     
    2         function add(num1, num2) {
    3             sum = num1 + num2;
    4             return sum;
    5         }       
    6         var result = add(10, 20);  //30
    7         alert(sum);                //30     
    8     </script>
    1     <script type="text/javascript">
    2         var color = "blue";
    3         
    4         function getColor(){
    5             return color;
    6         }
    7         
    8         alert(getColor());  //"blue"   
    9     </script>
     1     <script type="text/javascript">
     2         var color = "blue";
     3         
     4         function getColor(){
     5             var color = "red";
     6             return color;
     7         }
     8         
     9         alert(getColor());  //"red" 
    10     </script>
  • 相关阅读:
    VPS服务器 基本配置
    WCF 系列 → HelloWord
    ASP.NET MVC3 常用整理
    ASP.NET MVC3 过滤器 Filter
    NVelocity系列 → NVelocity配置详解
    网站安全检测 Web 安全测试工具
    ASP.NET MVC3.0 静态化实现
    CSS3的动画泡沫按钮
    SQL 大数据优化
    用友备份失败,超时己过期
  • 原文地址:https://www.cnblogs.com/fashion1993/p/4017791.html
Copyright © 2011-2022 走看看