1.document.write("<标签>内容</标签>"):只能用于写出到文档,文档加载完后不能使用否则会覆盖原来的文档。(即:函数里不作为插入添加使用可使用innerHTML="内容";
2.document.getElementById("Id"):只能使用html中Id,(其他形式为:getElementsByTagName,getElementByname(使用name属性此属性不唯一) ,getElementByClassName(不同浏览器对于类选择器的支持不同,某些低级的浏览器器是不能通过类名进行元素查找,需要自己编写函数实现);
3.JavaScript 是脚本语言。浏览器会在读取代码时,逐行地执行脚本代码。js代码的执行是串行执行(即可简单理解为单线程,但是服务器端脚本编程nodejs可以是多线程),一旦遇到错误,就会终止余下程序的执行。
4.对大小写敏感;
5.对代码行进行折行,您可以在文本字符串中使用反斜杠(\)对代码行进行换行;例:"document.write("Hello \
  World!");"等价于"document.write("Hello World!");"。但只用来拆分字符串,切不可拆分函数名或者变量名(document \
   .write:错误),并且函数名也不需要拆分,系统自动过滤多余空格和换行。
6.setTimeout()函数可以将函数添加到js函数循环器的末尾,可以用来解决一些存在ajax 或者异步函数执行提前问题;
7.js闭包(一个函数及其持有的外围变量)以函数为单位,不是以{}作为闭包,即if语句不会形成闭包,可以使用注释来阻止执行;
8.变量声明:var;变量是存储信息的容器(即所有变量抽象为容器,故可作为诸多具体变量使用)JavaScript 拥有动态类型。这意
  味着相同的变量可用作不同的类型。具体可用类型:字符串、数字、布尔、数组、对象、Null、Undefined;
9.空格或换行解释执行时一般视为空;
10.如果重新声明 JavaScript 变量,该变量的值不会丢失;
11.字符串中引号作用相同,但是字符串中引号不能和外围引号匹配;字符串可以是引号中的任意文本。您可以使用单引号或双引号,
  您可以在字符串中使用与外围不同的引号,即在js中单引号和双引号没有区别。
12.数组声明:var 变量=new Array();下标从0开始。另外两种使用方式:var 变量=new Array(元素1,元素2,元素3);
   var 变量=[元素1,元素2,元素3];
13.JavaScript 对象:var 对象={属性1:属性值1, 属性2:属性值2, 属性3:属性值3};
   对象属性有两种寻址方式:1)变量=对象.属性;(例:name=person.lastname)  2)变量=对象["属性"];(例:name=person["lastname"];)
14.Undefined 这个值表示变量不含有值。可以通过将变量的值设置为 null 来清空变量。
15.当您声明新变量时,可以使用关键词 "new" 来声明其类型;JavaScript 变量均为对象。当您声明一个变量时,就创建了一个新的对象。
16.JavaScript 中的所有事物都是对象:字符串、数字、数组、日期,等等。在 JavaScript 中,对象是拥有属性和方法的数据。
17.1)创建对象:对象=new Object();然后再实例化;或者直接实例化即为创建新对象。再或者使用构造器函数进行实例化创建
   2)访问对象的属性:objectName.propertyName;
   3)访问对象的方法:objectName.methodName();
18.函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。
19.1)局部 JavaScript 变量:在 JavaScript 函数内部声明的变量(使用 var)是局部变量,所以只能在函数内部访问它。(该变量的作用域是局部的)。
   2)全局 JavaScript 变量:在函数外声明的变量是全局变量,网页上的所有脚本和函数都能访问它。
   3)JavaScript 变量的生存期:JavaScript 变量的生命期从它们被声明的时间开始。局部:函数结束时死亡,全局:所有脚本和函数都可以访问使用。
   4)向未声明的 JavaScript 变量来分配值:如果您把值赋给尚未声明的变量,该变量将被自动作为全局变量声明(函数内也不例外)。
20.如果把数字与字符串相加,结果将成为字符串。
21."==":等于    "==="全等(值和类型);
22.变量==(condition)?value1:value2 ;
23.JavaScript for/in 语句循环遍历对象的属性;
24.可以对 JavaScript 语句进行标记。格式:“label:语句”;
25.break 和 continue 语句仅仅是能够跳出代码块的语句:break labelname;continue labelname;continue 语句(带有或不带标签引用)只能用在循环中。
   break 语句(不带标签引用),只能用在循环或 switch 中。通过标签引用,break 语句可用于跳出任何 JavaScript 代码块;
26.throw抛出对象为err;
27.查找HTML元素方法:
   1)通过 id 找到 HTML 元素;
   2)通过标签名找到 HTML 元素;
   3)通过类名找到 HTML 元素。(低级浏览器无法使用,需要编写函数)
28.1)改变 HTML 内容:修改 HTML 内容的最简单的方法时使用 innerHTML 属性。document.getElementById(id).innerHTML=new HTML
   2)改变 HTML 属性:document.getElementById(id).attribute=new value;
29.1)对事件做出反应:向一个 HTML 事件属性添加 JavaScript 代码:onclick=JavaScript;
   2)HTML 事件属性:如需向 HTML 元素分配 事件,您可以使用事件属性。
   3)改变 HTML 样式:document.getElementById(id).style.property=new style;
   4)使用 HTML DOM 来分配事件:即把事件(如:onclick)写到script里;
30.1)onload 事件可用于检测访问者的浏览器类型和浏览器版本,并基于这些信息来加载网页的正确版本。
   2)onload 和 onunload 事件可用于处理 cookie。
   3)onchange 事件常结合对输入字段的验证来使用。
   4)onmouseover 和 onmouseout 事件可用于在用户的鼠标移至 HTML 元素上方或移出元素时触发函数。
   5)onmousedown, onmouseup 以及 onclick 构成了鼠标点击事件的所有部分。首先当点击鼠标按钮时,会触发 onmousedown 事件,当释放鼠标按钮时,
      会触发 onmouseup 事件,最后,当完成鼠标点击时,会触发 onclick 事件。
31.1)创建新的 HTML 元素:如需向 HTML DOM 添加新元素,您必须首先创建该元素(元素节点),然后向一个已存在的元素追加该元素;简单来说就是:
     先创建元素(createElement())然后创建其文本节点,最后再将这个节点加在(appendChild())已有节点上。
   2)删除已有的 HTML 元素:找到(document.getElementById)要删除节点父节点,再找到此节点,最后从父节点中删除此节点。parent.removeChild(child);
      或者找到要删除节点,然后child.parentNode.removeChild(child);
32.JavaScript for...in 循环:for (对象中的变量)
                              {
                                  要执行的代码
                               }
33:如果前缀为 0,则 JavaScript 会把数值常量解释为八进制数,如果前缀为 0 和 "x",则解释为十六进制数。绝不要在数字前面写零,除非您需要进行
    八进制转换;所有 JavaScript 数字均为 64 位;
34.字符串长度。length属性;match()函数:单词匹配,匹配成功显示,否则显示null;replace(/被替换字符串/,"用来替换的字符串"):字符串替换,
    若不匹配,则替换失败;
35.Date方法:
   1)Date():返回现在时间,
   2)new Date().getTime():返回从1970年1月1日到现在有多少秒;
   3)setFullYear(year,month,day):设置具体时间。
   4)toUTCString():将时间转换为字符串。
   5)getDay():配合数组显示星期,星期天=0,星期一=1。。。。。;
   注意:月份、星期都是从0开始的。
36.数组方法:Array():
   1)concat():合并两个数组;
   2) join(符号):将数组转换为字符串;
   3)sort():排序函数;
   4)splice():删除插入函数,第一个参数为位置,中间参数为删除个数,第三个参数为添加元素;
   5)push():     向数组的末尾添加一个或更多元素,并返回新的长度。
   6)reverse():颠倒数组中元素的顺序。
   7)arrayObject.slice(start,end):从某个已有的数组返回选定的元素;start(必选):为负数,从头开始,end(可选,不选默认为尾部)。
37.字符串 'false' 是逻辑的 true;理解:false为字符串。如果逻辑对象无初始值或者其值为 0、-0、null、""、false、undefined 或者 NaN,为false;
38.Math:
   1)round():四舍五入取整;
   2)random():0到1之间随机数;
   3)max()、min():两个数中最大,最小数。
39.RegExp:正则表达式,用于检索。方括号用于查找某个范围内的字符。
   方法:1)test():test() 方法检索字符串中的指定值。返回值是 true 或 false。
         2)exec():exec() 方法检索字符串中的指定值。返回值是被找到的值。如果没有发现匹配,则返回 null。
         3)compile():compile() 方法用于改变 RegExp。compile() 既可以改变检索模式,也可以添加或删除第二个参数。
40.Window 尺寸:有三种方法能够确定浏览器窗口的尺寸(浏览器的视口,不包括工具栏和滚动条)。对于Internet Explorer、Chrome、Firefox、Opera 以及 Safari:
    window.innerHeight - 浏览器窗口的内部高度,对于 Internet Explorer 8、7、6、5:document.documentElement.clientHeight。或者:document.body.clientHeight;
   其他 Window 方法:
      window.open() - 打开新窗口
      window.close() - 关闭当前窗口
      window.moveTo() - 移动当前窗口
      window.resizeTo() - 调整当前窗口的尺寸
41.window.screen.availWidth - 可用的屏幕宽度; 属性返回访问者屏幕的宽度,以像素计,减去界面特性,比如窗口任务栏。
42.Window Location:依然可以不用写前面的window
    1)location.hostname 返回 web 主机的域名
    2)location.pathname 返回当前页面的路径和文件名
    3)location.port 返回 web 主机的端口 (80 或 443)
    4)location.protocol 返回所使用的 web 协议(http:// 或 https://)
    5)location.assign() 方法加载新的文档。
    6)location.href 属性返回当前页面的 URL。后面加上URL也可以访问该URL。
43.Window History:可以不使用前面window
    1)history.back() - 与在浏览器点击后退按钮相同
    2)history.forward() - 与在浏览器中点击按钮向前相同
44.来自 navigator 对象的信息具有误导性,不应该被用于检测浏览器版本。
45.1)警告框:alert("文本");
   2)确认框:confirm("文本");
   3)提示框:prompt("文本","默认值");
46.您不能在 jQuery 对象上使用 HTML DOM 的属性和方法;由于在 JavaScript 中函数就是变量;attr("style","color:blue")可以改变除上述样式。
   jQuery中$("#h001").html("Hello jQuery")等价于JavaScript中document.getElementById("h001").innerHTML="Hello Jquery";
    window.onload() 被 ready() 方法取代。
47.Prototype:$() 函数接受 HTML DOM 元素的 id 值(或 DOM 元素),并会向 DOM 对象添加新的功能,功能等价于document.getElementById();
   insert()函数替换innerHTML="";writeAttribute()函数可以改变css样式。
    1)Event.observe() 接受三个参数:
       您希望处理的 HTML DOM 或 BOM(浏览器对象模型)对象
       您希望处理的事件
       您希望调用的函数


posted on 2015-12-17 22:50  ineweyer  阅读(162)  评论(0编辑  收藏  举报