浏览器的组成
1、shell部分 用户能操作的都是shell部分 2、内核部分(大致分为两部分) 渲染引擎(语法规则和渲染) js引擎 其他引擎
主流浏览器及其内核
IE ---- trident Chorme ---- webkit/blink Firefox ---- Gecko Opera ---- presto Safari ---- webkit
javascript语言的特点
javascript是解释型语言,不需要编译成文件,跨平台。 javascript引擎是单线程。
javascript执行队列
轮转时间片:假如有两个需要执行的事件,js会把它切割成很多个时间片,再把这些时间片随机排列,最后会按照这些排列顺序一个个执行。
javascript基本语法 一、值类型 — 数据类型 1.不可改变的原始值(栈数据) Number,String,Boolean,undefined,null 栈数据先进后出规则,栈内存的东西是拷贝关系 2.引用值(堆数据) arrar,object,function … 引用值的名称也是在栈里面,但是它的值放的是堆内存的引用地址。
var arr = [1,2]; //数组是引用值 arr这个变量放在栈里面但是[1,2]是存放在堆里面的,arr拿的只是数组的引用地址 var arr1 = arr; //这样arr1只是copy了一份引用地址,它们还是指向了同一个地方 arr.push(5); //因为它们拿的都是引用地址,所有当你对数组进行改变的时候 arr和arr1都会相应的改变 现在它们的值都是[1,2,5] arr1 = [5,6]; //但是你对变量重新赋值的话,它会重新在堆内存里面放个值,再重新拿引用地址,现在arr1的值是[5,6],arr没有重新赋值,所以它的值还是[1,2,5]