- JS
- 浏览器中有两块,一块是内核,有渲染引擎,可以解析HTML与css,另一块独立于内核而存在,是js引擎,它可以解析js代码,有js引擎就可以解析js代码
- js由三部分组成,ES,语法;BOM,操作浏览器;DOM,操作HTML文档
- 基本语法:变量名大小写是有区别的
- ES5中声明变量用var,ES6的话增加了let和const
- 栈和堆,栈的话就是存的value,而堆存的是地址
- JS的数据类型
- 数据类型在ES5中有六个,分别是object,undefined,null,number,boolean,string;ES6中新增bigInt,symbol。而这些都是基本类型。
- 引用类型有String,Number,Boolean,Object,Function,Array,Date,RegExp,Error(ABDEFNORS),引用类型就是我们常说的对象
- 创建对象一般通过声明或者构造的方式
- 关于object
2.1 数据和类型的整合- 关于undefined
3.1 相当于一个空箱子,只有个名字,里面什么都没写- 关于null
4.1 和undefined很像,就是写明了为空,空对象- 关于number
5.1 0999表示八进制,0x999表示十六进制
5.2 infinity,-infinity,NaN也为number类型
5.3 [转化]true转为1,false转为0
5.4 [转化]null转为0
5.5 [转化]undefined转为NaN
5.6 [转化]‘’转化为0
5.7 [转化][9,8]转化为9,8- 关于boolean
6.1 [转化]只有‘’,null,undefined,NaN,false,0这六个返回的是false,其他为true- 关于string
7.1 字符串类型,string(a)相当于a.toString()
7.2 注意null,undefined是没有tostring方法的
7.3 [转化]一般是声什么都可以转化为string类型,看到什么转什么
7.4 [转化]但是如果是对象的话转“[object Object]”
7.5 [转化]数组转化为逗号分隔的字符串- 关于valueof用来返回括号中量的类型,而且注意返回都是字符串
8.1 八种类型中除了valueof null为“Object”
8.2 先toString后valueof
8.3 新增function类型,方法返回的是function,例如valueof alert为“function”- undefined、null、number、string、boolean、symbol类型数据都是属于原始值,返回的值如不是原始值,就报错
- 语句
- for-in语句
1.1 for (var item for array){console.log(array[item]);}会将array这个对象里面的所有属性全部打印出来。- label语句
2.1 break默认只跳出紧挨的一层for循环,如果要调到指定的for循环位置,需要为for循环价格标签,最后在break后写上标签