1、引用类型的值(对象)是引用类型的一个实例。引用类型是一种数据结构。;

2、Object类型:

     创建Object实例的方法有两种:第一,使用new操作符后跟Object构造函数  var person=new Object();第二,使用对象字面量表示法 var person={

                                                                                                                                                                                                        name:"Nicholas",

                                                                                                                                                                                                           age:29};

3、使用对象字面量语法时,属性名也可以使用字符串。使用对象字面量时,如果空留其花括号,则可以定义只包含默认属性和方法的对象。

4、JS访问对象属性时使用的都是点表示法,也可以使用方括号表示法来访问对象的属性,方括号内存放的是要访问的属性的字符串的形式。一般建议采用点表示法

5、Array类型 

    创建数组的基本方式有两种:第一,使用Array构造函数:var colors=new Array()或者var colors=new Array("blue","red","green");  第二,使用数组字面量表示法,数组字面量时由一对包含数组项的方括号表示,多个数组项之间以逗号隔开,var colors=["blue","red","green"];

6、数组的length属性不是只读的,通过设置这个属性,可以从数组的末尾移除项或向数组中添加新项。

7、使用Array.isArray()方法,最终确定某个值是不是数组。

8、数组继承的toLocaleString()、toString()和valueOf()方法,在默认的情况下都会以逗号分隔的字符串形式返回数组项,而如果使用join()方法,则可以使用不同的分隔符来构建这个字符串。

9、栈方法:栈是一种后进先出的数据结构,最新添加的项最早被移除。而在栈中项的插入和一处只发生在栈的顶部。push()和pop()方法。push()方法可以接收任意数量的参数,把它们诸葛添加到数组的末尾,并且返回您修改后数组的长度,而pop()方法则从数组末尾移除最后的一项,减少数组的length值,然后返回移除的项。

10、队列方法:先进先出push()想数组末端添加项,shift()移除数组中第一项并且返回该项。unshift()能在数组的前端添加任意个项并且返回新数组的长度。使用unshift()和pop()方法可以实现在数组的前端添加项,在数组的末端移除项。

11、重排序方法:reverse()和sort()使用reverse犯法会反转数组的项的顺序。

12、操作方法:concat()方法可以基于当前的数组中的所有项创建一个新数组。这个方法会先创建当前数组的一个副本,然后将其接收到的参数添加到这个副本的末尾,最后返回新构建的数组。

13、slice()方法,主要作用是项数组的中部插入项:

      删除:只需要指定两个参数:要删除的第一项的位置和要删除掉的项数。

      插入:要三个参数,起始位置,0(要删除的个数),要插入的项

      替换:三个参数,起始位置,要删除掉的项数、要插入的任意数量的项。

14、位置方法:indexOf()和lastIndexOf(),这两个方法接收两个参数:要查找的项和表示查找起点的位置的索引(可选)这两个方法都是要返回要查找的项在数组中的额位置,要是没有找到的话就返回-1.

15、迭代方法:5个迭代方法。每个迭代方法都接收两个参数:要在每一项上运行的函数和运行该函数的作用域对象(可选)-影响this的值。

      every():对数组中的每一项运行给定的函数,如果该函数对每一项都返回true,则返回true

     filter():对数组中的每一项运行给定的函数,返回该函数会返回true的项组成的数组。

     forEach():对数组中的每一项运行给定的函数,该方法没有返回值

     map():对数组中的每一项运行给定的函数。返回每次函数调用的结果组成的数组

     some():对数组中的每一项运行给定的函数,如果该函数对任一项返回true,则返回true。

    归并方法:reduce()和reduceRight()

16、Date类型两个方法:Date.parse():接受一个表示日期的字符串参数,然后尝试根据这个字符串返回相应日期的毫秒数和Date.UTC().   Date.now()方法:返回表示调用这个方法时的日期和时间 毫秒数。

17、RegExp类型

       正则表达式:var expression =/pattern/flags;

       flags的匹配模式有三种:g :表示全局模式;i:表示区分大小写;m:表示多行模式

      另一中创建正则表达式的方式是使用构造函数: 

      var pattern=/[bc]at/i;

      var pattern2=new RegExp("[bc]at","i");

18、RegExp实例方法:exex()该方法主要是为捕获而设计的,接收一个参数,即要应用模式的字符串,然后返回包含第一个匹配信息的数组。第二个方法时test(),他接受一个字符串参数,在模式与该参数匹配的情况下返回true,否则返回false。

19、function类型:函数的定义:

      (1)使用函数声明定义的:  var sum(num1,num2){ return num1+num2;}

       (2) 使用函数表达式定义:var sum=function(num1,num2){ return num1+num2;};

      (3)使用构造函数方法定义:var sum=new Function("num1","num2","return num1+num2");   //不推荐

   注意:使用不带圆括号的函数名是访问函数指针,而非调用函数。

19、函数内部的属性:两个特殊的对象:arguments和this;argiments对象有一个属性叫做callee,该属性一个指针,指向拥有这个arguments对象的函数。

20、每个函数都要两个属性:length()和prototype,其中length属性表示函数希望接收的命名参数的个数。prototype是保存他们所有势力方法的真正所在。

21、每个函数都包含两个非继承而来的方法:apply()和call();这两个方法的用途都是在特定的作用域中调用函数,实际上等于设置函数体内this对象的值。apply方法接受两个参数:一个是其中运行函数的作用域,另一个是参数数组。apply()和call()真正强大的地方时它们可以扩充函数赖以运行的作用域。

22、基本类型和引用类型的布尔值有两个区别:

      (1)typeof操作符对基本类型返回“boolean”,而对引用类型返回“object”

      (2)由于Boolean对象是Boolean类型的实例,使用instanceof操作符测试Boolean对象会返回true,而测试基本类型的布尔值会返回false。

23、Number类型:

      toFixed()方法会按照指定的小数位返回数值的字符串表示。

      toExponential()该方法返回以指数表示法表示的数值的字符串形式。

      toPrecision()可能返回固定大小的格式,也可能返回指数格式。

24、String类型:用于访问字符串中特定字符的方法是charAt()和charCodeAt()

                       三个创建新字符串的方法:slice(),substr(),substring().

                       trim()方法:创建一个字符串的副本,删除前置机后缀的所有空格,然后返回结果

                       大小写转换方法:toLowerCase()和toUpperCase()

                       字符串中匹配模式;match()方法,参数只有一个,要么是一个正则表达式,要么是一个RegExp对象。

                       查找模式:search(),参数只有一个,要么是一个正则表达式,要么是一个RegExp对象

                       替换字符串的操作:replace()方法,数只有二个,第一个要么是一个正则表达式,要么是一个RegExp对象,第二个是一个字符串或者函数

                       split()

                       比较两个字符串:localeCompare()

                       fromCharCode()方法:接收一个或者多个字符编码,然后将它们转换为一个字符串。

25 Global对象

          不属于任何其他队项的属性和方法,最终都属于他的属性和方法

           URI编码的方法:Global对象的encodeURI()和encodeURIComponent()可以对URI进行编码,一边发给浏览器

           这两者的区别:encodeURI() 不会对自身的术语URI的特殊字符进行编码,如冒号、正斜杠、问号、井号

                               encodeURIComponent()会对任何遇到的非标准字符进行编码

            dencodeURI()和dencodeURIComponent()分别进行解码         eval()函数

26 window对象:全局作用域中声明的所有变量和函数,都成了window对象的属性

27、MAth对象  min()和max()方法

28、舍入方法

        Math.ceil()执行向上舍入

        Math.floor()执行向下舍入

        Math.round()执行四舍五入

        Math.random返回大于等于0小于1的一个随机数

posted on 2015-10-02 17:31  AmeliaLi  阅读(71)  评论(0编辑  收藏  举报