函數:前端
函數在調用的時候,會造成一個私有做用域,內部的變量不會被外面訪問,這種保護機制叫閉包。這就意味着函數調用完畢,這個函數造成的棧內存會被銷燬。數組
但有時候咱們不但願他被銷燬。微信
函數歸屬誰跟它在哪調用沒有關係,跟在哪定義有關。閉包
Fn()調用完畢後獲得的是一個匿名函數,可是這個函數在fn這個做用域下定義的,因此這個匿名函數內部的變量在fn做用域下查找。這種寫法能夠使函數內部的變量不被銷燬函數
基類的Object子類有:spa
Function 函數prototype
Array 數組3d
Number 數字對象
Boolean 布爾blog
String 字符串
Date 日期
Math 算術
regExp 正則
函數數組數字布爾字符串日期算數正則都是類。本質都是函數。
String 類
定義字符串的方法
var st=new String(「hello world」)
簡寫
var st=「hello world」
1.字符串的加號運算 + 僅僅就是拼接 這種方法 叫字符串拼接
2.字符串prototype上的方法
1.charAt()返回指定位置的字符 var s=st.charAt(2)
2.concat()連接兩個或多個字符串,並返回新的 var s=st.soncat(sd,"hello world");
3.index Of()返回某個字符串在字符中首次出現的位置,沒有就是-1
4.lastIndex Of() 功能和indexOf同樣 不過是從後往前
5.match()
6.Search()
7.Replace()
8.slice()截取字符串的一部分
9.splice()將字符串按某種形式分割成數組
10.substr()也是截取和slice()有點區別
(1) substring() 跟slice同樣
(2) toLowerCase() 將字符串的中字符都變成小寫
(3) toUpperCase() 將字符串中的字符都變成大寫
(4) trim() 去掉字符串兩端的空白
每一個函數都自然帶一個return。若是寫return返回聲明就是什麼,若是不寫就是undefined。
類本質也是函數,裏面也有return可是默認是Object,若是強制return一個值,不會形成影響,若是return是一個對象,就會形成影響
Array 數組這類
var arr=new Array(「12」,zhangsan)
簡寫
var arr=【12,「張三」】
數組的基本方法:
1.push()在數組結尾添加一個新元素,返回值是數組長度
2.unshift() 在數組結尾添加一個元素返回是數組長度
3.pop()刪除數組最後一個元素,返回是刪除那個元素
4.shift()刪除數組第一個元素,返回是刪除那個元素
5.slice()截取數組一部分,並返回新的數組。對原來數組沒有影響
6.splice()在數組中添加或刪除元素
7.sort() 給數組中的元素排序
8.reverse() 反轉數組中元素的順序
9.toString() 將數組轉換成字符串格式的數組,並返回結果
10.concat()合併多個數組,並返回它的值
11.indexOf()檢索數組中元素,並返回它所在位置,沒有就是-1
12.jion()將數組全部元素轉成一個字符串
//數組去重
var arr=[12,45,12,23,12,23];
var ass=[];
for(var i=0;i<arr.length;i++){
if(ass.indexOf(arr[i])==-1){
ass.push(arr[i])
}
}
做者:晉飛翔
手機(微信同步) 17812718961
有緣千里來相會,願熱愛前端人員更繼續熱愛這份職業