变量
在js中我们需要一个地方来放一个未知的值,这时候我们就需要声明一个变量
变量的组成、
var a=100; a叫做变量名,100叫做变量值;
声明变量
创建一个变量前我们需要声明一个变量,我们通常用一个关键字来声明一个变量
eg:var a; let a;
在js中我们可以一次声明多个变量,也可以重复声明变量,也可以遗漏声明变量,这些都是允许的,但尽量不要这样使用,容易造成语法上的错误
用let和var定义变量的区别
1作用域不一样
var是函数作用域 而let是块作用域,如果在函数内声明了var,在整个函数内是有效的,叫做局部作用域,在除函数以外定义的变量在全局都可以访问,叫做全局作用域;
let是块作用域,在块作用域内定义的变量在外面是不可被访问的,所以现在很推荐在for这样的作用域内使用let定义
2、let不能在定义之前访问该变量但var是可以的
let必须先定义在使用,而var先使用后后声明也行,有一个提升变量的过程,只不过使用在定义之前会返回underfined,而let会直接报错
3、let不能被重新定义
在js中使用var声明一个变量是可以被重新定义的,也就是可以重复声明一个变量,这样就很容易出问题,但使用let声明一个变量在重复声明时就会直接报错。
总结:
let从规范化的角度来说,比var有了很大的进步,所以一般情况下推荐使用let
函数的使用
js是一个面向函数的语言,所以函数的使用在js中是非常重要的 创建一个函数的格式如下
function f(a,b){
var res =a+b;
ruturn res;
}
复制代码
其中a b叫做函数的形参,是用来接收实参的;ruturn用来表示函数的返回值,返回到函数的调用处
调用函数如下 f(1,2) ()里面传递的是实参,是真实的数据
用这种格式创建的函数是有一个提升的过程的
函数表达式
我们可以创建一个函数表达式,格式如下:
var a=function(a,b){}; 用这种方式创建的函数是不能被提前调用的,也叫做匿名函数
在函数作用域中创建的变量是局部变量,不能被函数以外访问