美文网首页
javaScript中的变量和变量作用域及一些个人的见解

javaScript中的变量和变量作用域及一些个人的见解

作者: 爱讲鸡汤的油腻大叔 | 来源:发表于2019-07-18 11:50 被阅读0次

JavaScript中的变量类型

一、数
二、字符串
三、布尔值
四、函数
五、对象
六、undefined
七、null
八、数组
九、日期
十、正则表达式

其中对于undefined和null的区别

undefined是变量已经被声明,但是未获得初始化值,如:

const val
console.log(val)     =>   undefined

null表示 该变量指向一个不存在的对象或地址,null类型为一个全局对象

image.png

此外,在基础数学运算中,null值将被转换为0

关于undefined和null的共同点

undefinednull取反之后均为true

console.log(!undefined)   =>  true
console.log(!null)  =>  true

变量作用域

变量可以分为全局变量和局部变量

全局变量在全局都有效
局部变量仅在该变量所在代码块及其子代码块有效

var variable = 'global'
myVariable = 'global'

function   var_fun(){
  var variable  = 'local'
  return variable  
}

function  my_var_fun(){
  myVariable = 'local'
  return myVariable 
}

console.log(variable)                (1)
console.log(var_fun())               (2)
console.log(variable)                (3)
console.log(myVariable)              (4)
console.log(my_var_fun())            (5)
console.log(myVariable)              (6)

分析

(1)因为variable是一个全局变量,所以输出global
(2)myVariable是在var_fun声明的局部变量,所以作用域仅在var_fun内,输出local
(3)仍然输出globalvar_fun中的myVariable为局部变量,仅在var_fun代码块生效,所以这里输出的是全局的myVariable
(4)myVariable没有使用变量关键字修饰,默认为全局变量,输出global
(5)在my_var_fun内,因为没有使用变量关键字修饰,所以这里引用的是全局定义的myVariable,输出global
(6)在(5)中,myVariable被引用并修改,所以输出local

相关文章

  • JavaScript 中的变量作用域

    JavaScript 中的变量作用域 JavaScript中的变量作用域被定义为函数作用域。 变量的值在定义该变量...

  • javaScript中的变量和变量作用域及一些个人的见解

    JavaScript中的变量类型 一、数二、字符串三、布尔值四、函数五、对象六、undefined七、null八、...

  • JavaScript 作用域和作用域链

    JavaScript 作用域 作用域就是变量与函数的可访问范围。在JavaScript中,变量的作用域有全局作用域...

  • 【前端】-023-JavaScript-进阶篇-变量作用域

    变量作用域 JavaScript中变量的作用域 采用静态作用域(变量定义的位置决定了变量的引用) 没有块级作用域,...

  • javaScript作用域

    作用域为可访问变量的集合。 在javaScript中,对象和函数同样也是变量, 在javaScript中作用域为可...

  • 闭包的实现原理

    作用域和作用域链 在 JavaScript 中, 作用域为可访问变量,对象,函数的集合。 全局变量 变量在函数外定...

  • Javascrip 之 变量作用域 & 封闭函数 &am

    变量作用域 变量作用域指的是变量的作用范围,javascript中的变量分为全局变量和局部变量。 1、全局变量:在...

  • 2018.11.2封闭函数,闭包

    一、变量作用域 变量作用域指的是变量的作用范围,javascript中的变量分为全局变量和局部变量 1、全局变量:...

  • 13

    变量作用域 变量作用域指的是变量的作用范围,javascript中的变量分为全局变量和局部变量。 1、全局变量:在...

  • JavaScript作用域链

    作用域 作用域就是变量和函数的可访问范围,控制着变量和函数的可见性与生命周期,在JavaScript中变量的作用域...

网友评论

      本文标题:javaScript中的变量和变量作用域及一些个人的见解

      本文链接:https://www.haomeiwen.com/subject/jtoclctx.html