函数和对象
1.【表达式和语句】
表达式:是javascript认识的最小单位,可以是直接量,变量,运算符的结合,或者其中之一。例:a = 123;true && 0;
语句:是由一个或多个表达式组成或关键字组成。var 是一个关键字。例: var a = 123;
变量命名补充:
保留字/关键字 this break continue function等
a.“关键字”就是 JS 本身已经使用了,具有一定特殊的含义for、function、if
b.“保留字”实际上就是预留的“关键字”,意思是现在虽然现在还不是关键字
比如:class float
(也就是本身还不具备特殊含义的),但是未来可能会成为关键字的
2.【基本类型与引用类型】
堆和栈的区别:
1、栈(stack)内存:由操作系统自动分配释放。
2、堆(heap)内存:动态分配的空间。一般由程序员分配释放,若程序员不释放,程序结束时可能由操作系统回收 。
7种数据类型分为二类
1.基本类型:Undefined、Null、Boolean、Number 和 String,这5中基本数据类型可以直接访问,他们是按照值进行分配的,存放在栈(stack)内存中的简单数据段,数据大小确定,内存空间大小可以分配。
2.引用类型:array、object、function。即存放在堆(heap)内存中的对象,变量实际保存的是一个指针,这个指针指向另一个位置。
3.【循环结构】
语法:
for(初始部分;循环条件;变化值){
循环体
}
例子:
for(var a = 1,sum=0; a<=5;a++){ sum = sum+a; console.log(sum); console.log(a); }
4.【函数】
--函数声明
---有名函数
---匿名函数
1.声明状态:
//变量提升,只提取变量名,值为undefined
bb(); //报错 bb is not a function. bb == undefined
var bb = function(){
函数体;
};
//函数提升,提取函数名和函数体。
函数名(); //可以正常调用。
function 函数名(){
函数体
}
2.执行/调用状态:
函数名();
5.【对象】
对象有属性和方法。
var obj = { 属性名:属性值, 属性名1:属性值, 属性名2:属性值, 方法:function(){ 函数体; }, 方法1:function(){ 函数体; } }
obj.属性名;
obj.方法();