1,js包含了Bom、Dom、 ECMAscript 三部分。
2,js的基本数据类型是 string 、number 、boolean。
3,js引用数据类型包括 Array、Date、Object、RegExp、Function。
4、js的两个空类型是null和undefined。
5、in关键字的用法:
1,变量对象的键
for(var 变量 in 对象名){}
2,判断属性是否在对象中
关键字 in 对象名
3,in 关键字操作数组的时候判断的是索引是否存在,而不是值。
6,值类型:存储的是数据本身的变量。
值类型的复制:将存储的数据直接赋值,两个变量是完全独立的。
引用类型:存储的是数据在内存中的地址,数据在内存中单独存储
引用数据的复制:将对象的地址复制一份单独存储,但是共用一个对象,任何一个修改都会改变对象的值。
7、逻辑或和与
表达式1 || 表达式2
如果表达式1为真则返回表达式1,如果表达式1为假则返回表达式2
例子: var num = 0 || 1 cosole.log(num) ----- 1 常用:var event = e || window.Event 或者在方法没传参的时候给赋默认值
表达式1 && 表达式2
如果表达式1为真,则返回表达式2
如果表达式1为假,则返回表达式1
例子:
var num = 1 && 2 cosole.log(num) ----- 2
var num = 0 || 1 cosole.log(num) ----- 0
8、delete 关键字可以用来删除对象的属性,还有未使用var 声明的变量。
delete 关键字有返回值,用来表示删除属性是否成功。
9、定义函数的基本方法:
1,函数声明:
function fun1(){
}
2,函数表达式:
var fun2 =function (){
}
3,Function:
var fun3 = new Function(){
}
10.Dom 操作:(增删改查)
增:document.createElement appendChild
删:removeChild
改:style,id,classsname,innerhtml,innertext
查:getElementById getElementsByTagName getElementsByClassName
HTML节点的查询
|
对象类型 |
属性/方法 |
说明 |
|
文档 |
getElementById(id) |
根据标签的id得到对应的标签对象 |
|
文档 |
getElementsByTagName(tag) |
根据标签名得到对应的所有子标签对象的集合(数组) |
|
|
|
|
|
节点 |
nodeName 标签节点 |
得到节点名 |
|
节点 |
nodeValue Text/Attr |
得到节点的值 |
|
节点 |
nodeType |
节点类型值 |
|
|
|
|
|
元素节点 |
childNodes |
得到所有子节点的集合(数组) |
|
元素/文本节点 |
parentNode |
得到父节点对象(标签) |
|
元素节点 |
firstChild |
得到第一个子节点(标签/文本) |
|
元素节点 |
lastChild |
得到最后一个子节点(标签/文本) |
|
|
|
|
|
元素节点 |
getAttribute(attrName) |
根据属性名得到属性值 |
HTML节点的增删改
|
对象类型 |
属性/方法 |
说明 |
|
文档节点 |
createElement(tagName) |
创建一个新的元素节点对象 |
|
文档节点 |
createTextNode(text) |
创建一个文本节点对象 |
|
document |
|
|
|
元素节点 |
appendChild(node) |
将指定的节点添加为子节点 |
|
元素节点 |
insertBefore(new,target) |
在指定子节点的前面插入新节点 |
|
element |
|
|
|
元素节点 |
replaceChild(new, old) |
用新节点替换原有的旧子节点 |
|
元素节点 |
removeChild(childNode) |
删除指定的子节点 |
|
元素节点 |
setAttribute(name, value) |
为标签添加一个属性 |
|
元素节点 |
removeAttribute(name) |
删除指定的属性 |
|
|
|
|
|
元素节点 |
innerHTML |
向标签中添加一个标签 |
11,捕获异常的方法
try{
//可能出现异常的代码
}catch(e){
//出现异常后的处理代码以及错误信息
}finally{
//不管有没有出现异常,这里的代码都执行,做释放资源的操作。
}
12,构造函数(constructor):
自定义构造函数的执行过程:
1,使用new 关键字创建对象
2,把新创建的对象赋值给构造函数里的this
3,在构造函数内使用this为新创建出来的对象添加属性
4,默认会返回新创建的这个对象
构造函数的返回值:
1,如果不写return 则默认返回新创建的对象
2,如果return的是空值,或者是基本类型或者是null,则返回的还是新创建的对象
3,如果return的是object类型的值,则返回return之后的值
function person(name,age){
this.name =name;
this.age =age;
this.sayHello = function (){
console.log("hello");
}
}
var p = new person()
如果调用函数的时候不给构造函数实参,构造函数就不会创建新对象,里面的this将会指向window,添加的属性也会添加给window。
如果构造函数没有参数可以不写括号调用
13,创建对象的四种方式:
1,使用字面量创建对象
var o = { key:val,key:value}
缺点:创建一个用一个,不能复用,造成代码冗余
2,使用内置构造函数创建对象
var o= new Object()
缺点:创建出来的对象是空对象,要手动给对象添加属性,代码冗余
3,封装创建对象的工厂函数(不推荐使用)
function createObj(){
var obj ={};
obj.xx=xxx;
return obj;
}
4,自定义构造函数
function 构造函数名{
this.xxx = xxx;
}
注意: 1,构造函数名首字母要大写
2,构造函数一般和new关键字一起使用
3,注意构造函数的返回值
14,常用事件
|
属性 |
值 |
描述 |
|
onclick |
回调函数 |
当鼠标被单击时执行脚本 |
|
ondblclick |
回调函数 |
当鼠标被双击时执行脚本 |
|
onmousedown |
回调函数 |
当鼠标按钮被按下时执行脚本 |
|
onmousemove |
回调函数 |
当鼠标指针移动时执行脚本 |
|
onmouseout |
回调函数 |
当鼠标指针移出某元素时执行脚本 |
|
onmouseover |
回调函数 |
当鼠标指针悬停于某元素之上时执行脚本 |
|
onmouseup |
回调函数 |
当鼠标按钮被松开时执行脚本 |
|
onload |
回调函数 |
当文档被载入时执行脚本 |
|
onchange |
回调函数 |
当元素改变时执行脚本 |
|
onsubmit |
回调函数 |
当表单被提交时执行脚本 |
|
onreset |
回调函数 |
当表单被重置时执行脚本 |
|
onselect |
回调函数 |
当元素被选取时执行脚本 |
|
onblur |
回调函数 |
当元素失去焦点时执行脚本 |
|
onfocus |
回调函数 |
当元素获得焦点时执行脚本 |
。。。。。
1728

被折叠的 条评论
为什么被折叠?



