js 引用類型

1.object類型:建立對象方式 new object 和字面量的方式。對象訪問屬性方式點和[],[]能夠訪問屬性中有特殊字符的屬性 例如 person[helleo  name]  而點是不能夠的;正則表達式

2.Array類型:數組建立方式 new array ,[] 或者 Array();數組的長度是可變的 好比 array.length = 3這樣不只能夠縮短數組還能夠增長數組長度  ;若是數組訪問的下標越界 不會報錯則輸出undefined;express

檢測數組  可使用 instanceof方法 ,isArray(),object.prototype.tostring.call(),array.constractor等方式;數組的tostring 和valueof方法 返回的是數組列表值的字符串;數組

數組的tolocalstring和tostring的不一樣之處是  tolocalstring是調用數組每一項的tolocalstring 而不是tostring;瀏覽器

數組棧和隊列的操做方法,push pop unshift shift;push和unshift能夠接受任意數量的參數;app

數組的從新排序方法:sort  reverse  sort默認將數組的每一項轉化爲字符串進行比較因此數組的值爲數值類型的時候用sort比較可能致使得不到想要的排序結果,sort內部原理採用的是冒泡排序,sort能夠接受比較函數,根據負數 0 正數來排序 ; reverse是將數組倒序;dom

數組的操做方法:contact  能夠接收 單個字符 或者數組參數,參數能夠有任意個;contact不會改變原有數組只會返回新的操做後的數組;函數

slice方法:截取數組,最多接收兩個參數 分別是start和end的數值 也能夠是負數;slice不會影響原數組;this

splice方法:能夠刪除 替換 插入 ;splice()第一個參數表示位置,第二個表示長度;刪除:splice(0,2);替換:splice(0,2,'替換'....);插入:splice(2,0,'插入'.....);splice會影響原數組,會改變原數組的值。編碼

indexof與lastindexof;indexof 是從數組的開頭開始查找,lastindexof是從數組的結尾開始查找,兩個方法的第一個參數表示要索引的值,第二個參數表示從哪一個位置開始索引,位置值能夠是負數。prototype

數組的迭代方法:

     1.every:對數組的每一項運行給定的函數,若是任何一項判斷結果必須都爲true  纔會返回true;

       new array().every(function(iten,index,array){ return true})

     2.filter:對數組的每一項運行制定的函數,返回該函數爲true的項;

       new array().filter(function(item,index,array){return item>0;return item}) 

     3.forEach: 對數組運行指定的函數 該函數不會返回任何值;

        new array().foreach(function(item,index,array){})

     4.map:對數組運行指定的函數 返回函數每次返回的結果組成的數組;

        new array().map(function(item,index,array){return})    

     5.some:運行指定的數組 只要函數有一項結果返回true  則返回true;

     6.reduce:new array().reduce(function(total,current,index,array){return total},init);這個函數返回的任何值都會做爲第一個參數自動傳遞給下一項;第一個參數的起始值是函數的第一項;若是設置了init這個參數   第一個參數的起始值位init;

      7.reduceright:是從數組的右側開始;

Date:new Date();   date.prase():因不一樣的瀏覽器實現以及地區設置接受的參數也是不同的 返回的結果都是毫秒數

   

RegExp: 字面量建立var expression = /partern/flag  flag:i表示不區分大小寫,g表示全局搜索,m:表示多行匹配;

             方法建立:var expression = new RegExp('',flag);

             實例屬性:

例如:var expression = new RegExp或者/patern/flag;expression.global;expression.ignoreCase;

字面量和構造函數的屬性是相同的;

         實例方法

        exec():返回數組,幷包含index屬性和input屬性;index表示匹配的位置;input表示匹配的字符串;

數組的第一項表示的是整個正則表達式匹配的字符串,其餘項是與模式中的捕獲組匹配的字符串;若是沒有捕獲組則返回第一項;例如

    對於exec方法而言 屢次調用知乎返回一個匹配項即便設置了全局;設置了全局搜索 每次執行都會返回下一項的匹配值;

構造函數RegExp()的實例屬性:

 

Function類型:

    函數沒有重載;只會覆蓋;

    函數聲明與函數表達式;函數聲明與表達式並不是相同;函數聲明在解析階段會提高至做用域頂部;而表達式不會;也可使用函數表達式和函數聲明;例如 var sun = function sun(){};這種語法在safri中會報錯;

   函數內部屬性:this與argments ;arguments是一個類數組;保存着函數的參數;這個對象還有一個屬性callee,表明着指向函數的指針;callee也有個屬性 caller,表明着當前調用函數的函數的引用;

  函數的屬性和方法:prototype和length;length表示函數接收的參數個數;prototype保存着繼承來的對象;

   apply和call是函數的兩個方法;這兩個方法都是在特定的做用域調用函數;其實是設置函數的this值;

 

基本包裝類型 

經過 Number,Blooean和String能夠建立基本類型的實例;基本類型調用引用類型的方法時候會自動轉換成引用類型;引用類型與基本類型的主要區別是對象的生存週期;基本類型是用完就會銷燬而引用類型則是隻要引用保持着則不會銷燬;引用類型的typeof結果是object;而基本類型不是;

    Boolean:var flag = new Boolean(true);Boolean類型重寫了valueof 返回得是基本類型值false和true;

重寫了tostring方法 返回的是true和false的字符串;

   Number:var num  = new Number();也重寫了valueof tostring方法 tosting能夠根據傳入的進制數返回對應的進制結果;num的tofixed方法 返回的是保留幾位小數後的字符串;

   String: var str = new String();實例屬性length返回的是長度;

   字符方法:charat 和charcodat;都接受一個參數 charat返回指定位置的單個字符 而charcodeat返回的是指定字符的字符編碼;

   字符操做方法:contact;slice;substr;substring;都不會修改字符自己;

  slice:接收兩個位置參數;第一個表明開始位置;第二個表明結束位置;參數爲負數;slice會將參數的負數加上字符的長度獲得位置;(參數加上負數後仍是負數則轉換成0)

  subtring:第一個參數表明起始位置;第二個參數表明結束位置;會將全部的負數所有轉換成0;

  substr:第一個參數表明起始位置;第二個表明長度;若是是負數;會將第一個參數是負數加上字符的長度;第二個參數是負數轉換成0;(參數加上負數後仍是負數則轉換成0);

字符串位置方法:

    indexof與lastindexof:接收兩個參數;第一個表明索引的值;第二個表明索引發始位置;

    trim:去除先後空格;

   字符串轉大小寫方法

   字符串模式匹配方法:match與exec基本相同;search;replace都是模式方法;

   split:接收兩個方法 第一個分隔符;第二個分隔後的長度;

   字符串比較方法:localeCompare;返回值1,0,-1;區分大小寫;大寫在小寫前面;

   fromcharcode:將編碼轉換成字符串;

      

global對象:

    全局對象 是一個特別的對象;兜底對象;最基本的對象;基本上全局做用域定義的屬性和方法都是它的屬性;

   uri編碼:encodeuri:不對uri自己的特殊字符編碼;例如冒號 正斜槓 問號和#號;

                encodecompoent:對非標準字符都編碼;

global對象的屬性:

    

 

Math對象:

     經常使用的方法:

       max和min:接收多個參數;返回最大或者最小的數;

       舍入方法:ceil:向上舍入;floor:向下舍入;round:標準舍入

      random:隨機數 返回0-1之間的數;不包括0和1;

     隨機數:

相關文章
相關標籤/搜索