JavaScript知识点复习:
- JavaScript包含三个部分:
ECMAScript:规定JS的语法规范;
DOM:Document Object Model 文档对象(给我们提供了一个完整的操作页面元素的api);
BOM :Browser Object Model 浏览器对象。
2.JavaScript的基本数据类型:String、Number、Boolean。
3.JavaScript的复杂数据类型(引用类型):Array、Date、Object、RegExp、String、Number、Boolean、
核心类型 Object function
4.如何获取一个数据的数据类型:
使用关键字 typeof
浏览器运行出来是string类型
typeof返回值是string类型。
5.首字母大写的都是构造函数(String、Number、Date...)
6.JavaScript两个空类型:
null(变量不可能是null值,除非手动去设置,什么时候给变量设置为null,要解除对象的占用或引用的时候)
undefined(定义之后未赋值)
7.=== 全等(判断类型和值)
== 等于(只判断值)
8.JavaScript中的in运算符有什么用:
a) in关键字最常用的是在for in循环中,去遍历对象的键;for(var 变量 in对象名)
b) 判断属性是否存在于对象中;属性名 in 对象
c) in关键字操作数组的时候,判断的是索引是否存在,而不是值。
9.JavaScript的关系运算符:> < >= <= =
10.JavaScript使用new关键字创建对象;var now = new Date();
11.值类型:
a) 存储的就是数据本身的变量就是值类型的数据;string number boolean undefined
b) 值类型的赋值:直接将存储的数据复制一份进行赋值,两份数据在内存中是独立存在的
c) 值类型做函数的参数:函数内部的变量,也就是实参和形参只是简单的赋值操作,两个数据独立存在,在函数内部,形参进行修改,不会影响外面的变量
12.引用类型:
a) 存储的是数据在内存中的地址,数据在内存中单独存储,就是引用类型的数据;object
b) 引用类型的赋值:引用类型赋值的时候,是将变量中存储的地址复制一份单独存储,但是两个变量共享同一个对象,修改其中一个对象,另外一个引用来访问的时候,也会访问到修改后的对象。
c) 引用类型做函数的参数:还是把实参存储的地址赋值给了形参,在函数内部,形参同样也指向该对象,所以,在函数内部对该对象进行修改会影响到外部的变量。
注意:如果在函数内部重新创建对象,为该形参赋值,那么两个对象将不再有关系,修改其中一个,另外一个不受影响。
13.对象的动态特性:
a) 对象的动态特性是指在对象创建出来之后,为对象添加新的属性或者方法
b) obj.sayHello = function(){方法;}
c) obj.xxx = xxx;
i. 如果xxx存在,是进行修改
ii.如果xxx不存在,是添加属性或者方法
14.对象:
a) 键值对的集合
b) 对象名[属性名];这里的属性名是字符串;obj["name"];
c) 通过这种方式,也可以获取对象的属性值,也可以修改对象的属性值,还可以为对象新增属性并赋值;
15.新增属性、方法的方式有:
a)点语法
b)通过[ ]的形式去添加
16.逻辑中断(短路运算):或、与、非
17.delete关键字:
a)可以用来删除对象的属性,还有未使用var声明的变量
b)delete关键字有返回值,用来判断属性的删除是否成功
c)如果删除的是不存在的属性,返回值为true
d)如果删除的属性存在原型当中,那么返回值为true,但是并未删除
18.调试工具的使用
19.函数
a)函数声明
b)函数表达式:var fn = function name(){};
i.在使用函数表达式声明函数的时候,function后面可以跟函数名,但是这个函数名只限在函数内部使用,外部无法访问
c)var fn = new function();
20.DOM操作:节点的增删改查
a)增:document.createElement、appendChild
b)删:removeChild
c)改:style、id、className、innerHTML、innerText
d)查:getElementByID getElementByTagName getElementByClassName
21.异常处理:
a)异常捕获语句:try catch finally (注意:语法异常,try{}catch(){}无法捕获)
语法:try{可能会出现异常的代码}catch(e){出现异常后的处理代码 e就是异常信息,打印出来查看}
b)异常最大的特征就是一旦出现异常,后面的代码将不会执行,为了保证出现异常之后后面的代码还能执行就要对异常进行处理
c)throw关键字 :手动抛出异常信息
d)finally{//不管是否出现异常,这里的代码都会执行;//node.js;//做释放资源的操作}:
22.面向对象编程:
a)面向过程的思维方式:把解决问题的关注点,放到解决问题的每一个步骤上面
b)面向对象的思维方式:把解决问题的关注点放到解决问题需要的一系列问题上
c)对象(万物皆可为对象)、对象的特征(身高,体重。。。)、对象的行为(走,跑。。。)
在js当中,键值对的组合就是对象
现实生活中对象的特征对应到js当中就是对象的属性
现实生活中对象的行为对应到js当中就是对象的方法
面向对象是对面向过程的封装。