《JavaScript高级程序设计》心得笔记—–第一文章

第一章

JavaScript由ECMAScript、DOM、BOM组成。其中BOM功能于HTML5丁起了正规化的正规化,使BOM的兼容性越来越强。

第二章

1、<script>属性被的async属性是意味着应这下载版本但是未应该妨碍页面被的其它操作,只对外表文件中,async=”async”。type属性默认text/javascript。defer属性

  
可以推迟文档完全被分析和现实后才落实,只针对表文件中,defer=”defer”。

2、在<script>中嵌入javascript中,不可以更任何地方以</script>,不然会受看是结束标志,如果不要是动,就如于前面加入转义符号\

3、<script>引用时使用<script
/>不适合HTML规范,而且未可知取得部分浏览器,尤其是IE的科学分析,所以下<script></script>

4、XHTML代码规范比HTML更加严峻,比如a <
b,在HTML中可分析,但是于XHTML中<后面不克同空格,所以可以下CData片段,把于的居

   //<![CDATA[

       代码片段

   //]]>

5、当浏览器不支持脚本或者浏览器支持脚本,但是脚本被剥夺的时刻,如果有<noscript>的话,就会实行中的情

第三章

1、变量、函数符和操作符区分轻重缓急写,第一单字母必须是字母、_、$

2、严格模式:”use
strict”,整个脚本启用,就坐落顶部,在指定函数前用,就拿严模式在一个函数里面。在是模式下,不克定义函数、参数的讳呢eval和arguments,不然回导致语法错误

3、数据类型包括:Underfined、Null、Boolean、Number、String,typeof可以回到数据类型,未定义的变量默认取得underfined值,非数值转换成数值可采取Number()[适用于其它数据类型,空字符返回0],
parseFloat()[适用于字符串,22.5->22.5]、parseInt()[适用于字符串,空字符返回NaN,小数点未是可行的数字字符,22.5->22]

4、for-in语句:for(property in expression){代码块}

5、label语句(给代码加标签):label:statement 比如:start:for(var i =
0;i<count;i++){代码块}

第四章

1、只有引用类型值才会互补加属性,复制变量值时,新变量受变量的震慑,基本类型值未能够填补加属性,复制变量值时,新变量和变量相互独立

2、  检测引用类型应用instanceof,比如:person instanceof Object

第五章

1、创建Object实例的办法:

   (1)先new之后于跟Object的构造函数

var person = new Object();    —–法二:var person = {};

     Person.name=”aa”;

     Person.age=23;

   (2)对象字面量,属性也可采取字符串,属性使用数值的语会自动转为字符串

var person = {

        name:”aa”,

        age:23

}

2、displayInfo({name:”aa”, age:23})

   function displayInfo(args){}

3、  (1)var color = new
Array();括号里可以传数值也得传字符串,其中new可以略

   (2)数组字面量:var color = [];

4、数组在最后添加新项:color[color.length] = “red”;

5、检测数组:(1)if(value instanceof Array){对数组执行某些操作}

   (2)if(Array.isArray(value)) {对数组执行某些操作}

6、在屡组被:

1)         toString()可以拿每个值得字符串转换为为逗号分隔的字符串,

2)         valueOf()可以回的或者数组

3)         join()加入分隔符

4)         push()可以接收任意数量的参数,pop()取得最后一项之值

shift()取得第一码之价,unshift()能当频繁组的前端添加任意个桩并回到新数组的长度

5)         重排序:sort() 升序 \   reverse() 降序

6)        
Concat();可以以原有数组的底蕴及更创一个副本,在以受到之参数上加到副本的结尾。例:

       var color = [“blue”,”red”];

       var color2=color.concat(“yellow”);// blue,red, yellow

7)        
slice()能够冲当前底数组中之等同或者多个桩创建一个新的数组。例:slice(1)从职务1上马复制,slice(2,4)从位置2从头复制到3收场,slice(-2,-1)从职务倒2开始复制

8)        
splice()向数组的中段插入数组,(1)删除:splice(0,2)删除数组前少码

(2)插入:splice(2,0,”red”,”blue”)从此时此刻数组位置2插入字符串

(3)替换:splice(2,1,”red”,”blue”)删除数组位置2的项,再起位置2方始插入字符串

9)         位置方法:(ie9+、Firefox 2+、Safari 3+、Opera 9.5+、Chrome)

IndexOf();从开头开始查找

lastIndexOf();从结尾处开始查找

10)     迭代方法:every(),some(),filter(),map(),forEach()

11)     归并道:reduce();从头到尾  reduceRight();从尾到头

7、Date

1)         var date = new Date(Date.parse(“May 21 2016”));

    var date = new Date(Date.UTC(2016,2,21,17,31,55));

2)         toDateString();显示星期几,月,日,年

toTimeString();显示时转和时区

toLocalDateString();以一定于地区的格式显示星期几、月、日和年

toLocalTimeString();以特定于贯彻之格式显示时转和时区

toUTCString();以一定于贯彻之格式完整的UTC日期

   8、正则表达式:(RegExp())

1)         g:全局模式  i:不分轻重缓急写  m:多实行模式

      需要转义的元符号:([{\^$|)?*+.}

2)         global:是否设置了g标志ECMAScript

ignoreCase:是否设置了i标志

lastIndex:表示开物色下一个配合配项的字符位置,从0开始算打

multiline: 是否设置了m标志

source:正则表达式的字符串表示

3)         exec()捕获组的,包含两个附加属性:index和input

4)         正则表达式的构造函数属性:

input($_):最近一样破如配合的字符串

lastMatch($&):最近一致赖的相当项

lastParen ($+):最近平不良匹配的捕获组

leftContext($`):input字符串中lastMatch之前的文件

multiline($*):布尔值,多行模式

rightContext($’) :input字符串中lastMatch之后的公文

      ps:使用短属性的当儿如果记加上[],比如:[“$+”]

opera不支持:input、lastMatch、lastParen、multiline

        ie不支持:multiline

 

 

 

未完待续。。。