JS基础
一. 数据类型
- JS基本数据类型
number、 string、 boolean 、null、 undefined - 引用数据类型
object: {} 、[] 、/^$/ 、Date
function
区别:基本数据直接赋值,引用类型是引用的堆里面的值
二. 浏览器执行顺序
- 当浏览器加载HTML的时候,首先会提供一个供全局JS执行的环境 -> 全局作用域(global / window)
- 预解释
在当前作用域中,JS代码执行之前,浏览器首先会默认把带有var和function的进行提前声明和定义。(注意:var只提前声明,function提前声明+定义)
例如:var num = 10;
声明(declare):var num ; 告知浏览器有一个number变量了
定义(defined):num = 10; 给变量赋值
三. JS中内存的分类
- 栈内存:用来提供一个供JS代码运行的环境->作用域(全局作用域、私有作用域)
- 堆内存:用来存储引用数据类型的值->对象存储的是属性名和属性值,函数存储的是代码字符串
console.log(num);
var num = 10;
console.log(num);
console.log(obj);
var obj = {
name: '我是小雪',
age: 7
}
console.log(obj);
fn(100, 200);
function fn (num1, num2){
var total = num1 + num2;
console.log(total)
}
fn(100, 200);
console.log(fn); //把整个函数的定义部分(函数本身)在控制台输出
console.log(fn(100, 200)); //把当前函数执行的返回结果(return后面写的啥,返回值就是啥,没有return则返回undefined)
输出值:
浏览器运行过程: