刚接触JavaScript不久,主要学习了W3C、JS秘密花园、Mozilla几个教程,在这里把学习笔记分享给你们,但愿对你们有帮助。git
W3C school
1.document.write只能在HTML输出中使用,若是在文档加载后使用该方法,会覆盖整个文档
2.JavaScript是脚本语言,浏览器会在读取代码时,逐行地执行脚本代码,而不是在执行前对全部代码进行编译
3.没有初始化的变量值为undefined;从新声明JavaScript变量,变量值不会消失
4.JavaScript变量能够用做不一样的类型,以最后赋值的类型为准
5.JavaScript能够向已存在的对象添加属性和方法
6.不加var的变量是全局变量,全局变量在页面关闭后被删除;加了var且在方法中的变量是局部变量
7.数字和字符串相加,结果将成为字符串
8.能够用for/in语句循环遍历对象的属性
9.数组能够越界,越界以后取值为undefined,至关于false
10.经过标签引用,break语句能够用于跳出任何JavaScript代码块
11.throw可用于抛出一个异常,catch会捕捉到这个错误,并显示一段自定义的错误消息
12.with语句中任何表达式的所属对象或者是类都由with后紧跟的变量所表明
13.
改变HTML内容:document.getElementById(id).innerHTML=new HTML
改变HTML属性:document.getElementById(id).attribute=new value
改变HTML样式:document.getElementById(id).style.property=new style
14.事件:onload、onunload、onchange、onmouseover、onmouseout、onmousedown、onmouseup、onclick、onfocus……
JavaScript秘密花园
1.JavaScript中全部变量都是对象,包括数值,除了两个例外null和undefined
2.删除属性的惟一方法是使用delete操做符
3.JavaScript不包含传统的类继承模型,而是使用prototypal原型模型
4.当查找一个对象的属性时,JavaScript会向上遍历原型链,直到找到给定名称的属性为止
5.hasOwnProperty是JavaScript中惟一一个处理属性可是不查找原型链的函数
6.在使用for in loop遍历对象时,推荐老是使用hasOwnProperty方法,这将会避免原型对象扩展带来的干扰
7.JavaScript中的函数声明会在执行前被解析(函数赋值不会),所以能够在函数声明以前被调用
8.函数是JavaScript中惟一拥有自身做用域的结构,所以闭包的建立依赖于函数
9.JavaScript中每一个函数内都能访问一个特别变量arguments。这个变量维护着全部传递到这个函数中的参数列表
10.===是严格等于操做符,不会进行类型转换
11.当漏写分号时,JavaScript解析器会自动插入分号,可是这有可能改变代码的行为
Mozilla
1.在函数内部声明全局变量后,使用该变量时,必须保证该函数已经被调用
2.JavaScript只支持函数做用域,不支持块级做用域,如for循环内部定义的变量外部也可使用
其余
1.若是&&左侧表达式的值为真值,则返回右侧表达式的值;不然返回左侧表达式的值
2.若是||左侧表达式的值为真值,则返回左侧表达式的值;不然返回右侧表达式的值