zoukankan      html  css  js  c++  java
  • JavaScript变量

    一、命名

      (一)、方法

        1、匈牙利命名法:变量名=类型+对象描述

          Int 整型:i,Float 浮点:fl,Boolean 布尔:b,String 字符串:s,Array 数组:a,Object 对象:o,Function 函数 :fn,Regular Expression 正则:re

        2、驼峰命名法://大小写混合转全部大写的方法

         (1)、全部小写:单词与单词间使用下划线分割    //first_name

         (2)、大小写混合

            2.1.1、大驼峰:每个单词首字母大写    //FirstName

            2.1.2、小驼峰:第一个单词小写,其余的大写    //firstName

      (二)、规则

        1、音节符:英文字母或下划线

        2、组成:英文字母、数组、下划线

        3、禁忌:JavaScript关键字、保留字  //相关链接

    二、声明

      (一)、显示声明

        var 变量名,es6:let 变量名,const 变量名

      (二)、陋习

        1、没有类型    //例如数组、对象等

        2、重复声明

        3、隐式声明

        4、不声明直接赋值

      (三)、正确操作

        1、先声明,后读写;先赋值,后运算

    三、变量类型

      (一)、值类型

        1、占用空间固定,保存于栈中

        2、保存与复制的是值本身

        3、使用typeof检测数据类型

        4、基本数据类型是值类型

      (二)、引用类型

        1、占用空间不固定,保存于堆中

        2、保存与复制的是指向对象的一个指针

        3、使用instanceof检测数据类型

        4、使用new()方法构造出的对象是引用型

    四、作用域

      (一)、全局变量:在任何位置调用

        1、在函数体外最外层定义的变量

        2、在函数内部定义的无var、let、const声明的变量

      (二)、局部变量:当前函数内部使用

        1、在函数体内用var、let、const声明的变量

        2、函数的参数变量

      (三)、优先级:局部变量 > 参数变量 > 全局变量

        1、局部变量高于同名全局变量

        2、参数变量高于同名全局变量

        3、局部变量高于同名参数变量

      (四)、特性

        1、var无块级作用域,es6新增let块级作用域定义变量

        2、全局变量是全局对象的属性,局部变量是调用对象的属性

        3、作用域链    //相关说明

         (1)、内层函数可以访问外层函数的局部变量

         (2)、外层函数不能访问内层函数的局部变量

        4、声明周期

         (1)、全局变量:除非被显示删除,否则一直存在    //var声明的全局变量无法使用delete删除

         (2)、局部变量:自声明起到函数运行结束或被显示删除

         (3)、回收机制:标记清楚、引用计数    //相关说明

  • 相关阅读:
    jenkins构建完成后,执行的命令行的东西也会自动结束的解决办法
    解决ansible上传速度慢的问题
    uniq的坑坑
    tomcat问题
    R语言入门:对于boxplot()箱型图的直观理解
    R语言入门:条形图barplot()的绘制
    R语言入门:数据框的创建和访问
    Python当中的命令行参数sys.argv[]的使用方法
    R语言清除单个变量和全部变量
    linux下添加环境变量
  • 原文地址:https://www.cnblogs.com/detanx/p/JavaScriptVar.html
Copyright © 2011-2022 走看看