一、定义
js中的字面量基本可以等价为“右值”即等号右边的值。
var a = "124"; //"124"为字符串字面量
var b = 1; //数值字面量
var c = ["q","p"]; //数组字面量
var d = 5*3; //表达式字面量
var e = { //对象字面量
name:"yyt",
age:22,
say:function(){
console.log("asdgdsg");
}
}
注:上面的用法在编码的时候基本都会用到,但是比较特殊和有优势的就是通过“数组字面量”和“对象字面量”去构造一个数组和对象。
二、变量、常量、字面量
const a = 10;
var b = [];
注:上面的a为常量,b为变量,10、[]都为字面量,其实常量也可以看做是一个特殊的变量,只是“常量”这个变量在赋值后就不可以再重新赋值改变。
三、js中函数定义
(1)使用函数声明的方式定义
function s(){
//执行的代码块
}
注:通过“函数声明的方式”定义的函数在声明之后不会立即生效,只有在调用改函数的时候,才会执行函数内部代码块
(2)使用函数表达式的方式定义
var a = function(d,d2){
//执行的代码
}
注,a就为一个函数变量,可以作为一个函数使用。
四、函数提升和自调用函数
(1)函数提升
“提升”应用在变量的声明和函数的声明中。
函数可以在声明之前进行调用(即:利用“函数声明的方式”定义的函数可以在声明之前进行调用)。
例:s(1,3);
function s(data, data2){
return data + data2;
}
而利用“函数表达式的方式”定义的函数不能进行函数提升。
(2)自调用函数
利用“函数表达式的方式”定义的函数可以进行自调用
例:(function(){
//执行的代码块(我将调用我自己)
})();
注:1.表达式后面紧跟(),函数会进行自调用
2.利用“函数声明的方式”定义的函数不能进行自调用,所以在函数外面包含一层“()”用来表示这是函数表达式