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

第一章

JavaScript由ECMAScript、DOM、BOM组成。在那之中BOM效率在HTML5中有了专业的正规,使BOM的包容性更加高。

第二章

一、<script>属性中的async属性是代表应当及时下载版本可是不应当妨碍页面中的别的操作,只对外表文件有效,async=”async”。type属性默许text/javascript。defer属性

  
能够顺延文书档案完全被解析和实际之后才完成,只对表面文件有效,defer=”defer”。

二、在<script>中嵌入javascript中,不得以再任哪个地点方使用</script>,不然会被认为是达成标志,要是非要使用,就要在前方到场转义符号\

3、<script>引用时行使<script
/>不吻合HTML规范,而且不可能博取部分浏览器,尤其是IE的不利解析,所以选拔<script></script>

四、XHTML代码规范比HTML尤其严酷,比如a <
b,在HTML中得以分析,可是在XHTML中<前边无法跟空格,所以能够动用CData片段,把相比的放在

   //<![CDATA[

       代码片段

   //]]>

伍、当浏览器不支持脚本恐怕浏览器协助脚本,可是脚本被剥夺的时候,假如有<noscript>的话,就会实施里面的剧情

第三章

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

2、严厉情势:”use
strict”,整个脚本启用,就位于顶部,在内定函数前应用,就将从严方式放在2个函数里面。在那几个格局下,不能够定义函数、参数的名为eval和arguments,不然回导致语法错误

叁、数据类型包罗:Underfined、Null、Boolean、Number、String,typeof可以重返数据类型,未定义的变量私下认可取得underfined值,非数值转换到数值能够应用Number()[适用于其它数据类型,空字符重返0],
parseFloat()[适用于字符串,22.伍->2贰.5]、parseInt()[适用于字符串,空字符再次来到NaN,小数点不是实惠的数字字符,2贰.伍->2二]

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

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

第四章

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

贰、  质量评定引用类型应用instanceof,比如:person instanceof Object

第五章

一、创造Object实例的不二等秘书诀:

   (一)先new之后在跟Object的构造函数

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

     Person.name=”aa”;

     Person.age=23;

   (二)对象字面量,属性也可使用字符串,属性使用数值的话会自行转为字符串

var person = {

        name:”aa”,

        age:23

}

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

   function displayInfo(args){}

叁、  (壹)var color = new
Array();括号里面能够传数值也能够传字符串,在那之中new能够简单

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

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

5、检查评定数组:(一)if(value instanceof Array){对数组执行有些操作}

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

陆、在数组中:

一)         toString()能够将各个值得字符串转换为以逗号分隔的字符串,

二)         valueOf()能够重临的可能数组

三)         join()加入分隔符

四)         push()能够收到任意数量的参数,pop()取得最终1项的值

shift()取得第贰项的值,unshift()能在数组的前端添加任意个项并赶回新数组的长短

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

陆)        
Concat();能够在原有数组的功底上再次创下制一个副本,在将收受到的参数添加到副本的末梢。例:

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

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

7)        
slice()能够依照当前的数组中的一或八个项创立多少个新的数组。例:slice(一)从职分1方始复制,slice(二,肆)从地点二初叶复制到三竣事,slice(-二,-一)从岗位倒贰开端复制

8)        
splice()向数组的正中插入数组,(一)删除:splice(0,二)删除数组前两项

(二)插入:splice(贰,0,”red”,”blue”)从近期数组地点二插入字符串

(三)替换:splice(2,一,”red”,”blue”)删除数组地方二的项,再从地方2发端插入字符串

⑨)         地方方法:(ie玖+、Firefox 二+、Safari 三+、Opera 玖.伍+、Chrome)

IndexOf();从起初先导查找

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

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

1一)     归并方法: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日期

   八、正则表明式:(RegExp())

一)         g:全局格局  i:不区分轻重缓急写  m:多行格局

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

二)         global:是还是不是设置了g标志

ignoreCase:是或不是设置了i标志

lastIndex:表示起首查找下一个匹配项的字符地方,从0开头算起

multiline: 是或不是设置了m标志

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

三)         exec()捕获组的,包蕴多个附加属性:index和input

四)         正则表明式的构造函数属性:

input($_):目前三次要合营的字符串

lastMatch($&):近来一次的优秀项

lastParen ($+):近年来二回相称的捕获组

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

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

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

      ps:使用短属性的时候要记得加上[],比如:[“$+”]

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

        ie不支持:multiline

 

 

 

未完待续。。。