在前面已經知道js中的型別有boolean,string,number,undefined,function,object,其中boolean,number,string為值型別。所謂的基本型別包裝,是將基本型別中值型別包裝為引用型別與之
相對應的是boolean,number,string,其主要作用為值型別增加相應的操作方法,因為值型別本身沒有方法,方法是物件型別才具有的。
臨時封裝,如var str='hello';var str2=str.substring(2):llo;其基本過程是var str=new string('hello');str.substring(2);str=null;臨時使用用完就**,這一過程交給js引擎完成。
所以基本型別封裝簡單理解為為值型別提供擴充套件方法,而且基本封裝型別不用或者說很少見到顯示構建物件。如:var sr=new string('hello world');
基本沒什麼擴充套件
1)tofixed:保留幾位小數,js保留小數會自動進行四捨五入,如:var a=10.059;a.tofixed(2),結果為10.06;
2)toexponential:使用指數方式表示數字,如 var num=10;num.toexponential(1),結構為1.0e1,引數為保留的小數個數;
3)toprecision:該方法相容了上面2個方法,表示保留有效位數,其引數表示有效位數個數;
如 var num=99,
num.toprecision(1); 1e2;
num.toprecision(2); 99;
num.toprecision(3); 99.0;
這是提供方法最多也是最複雜的基本包裝型別
1)concat:多個字串連線,但是返回的新字串,這裡與陣列的該方法同理,但是大多數情況下使用+號的頻率很高;
2)chartat();表示獲取指定引數位置處的字元,如var str='hello world';str.chartat(2);結果為:l;chartcodeat,與前面相同只不過返回的是字元的asc編碼;
fromchartcode:將asc編碼轉換為字元;
3)indexof和lastindexof:查詢目標字串所在位置,不同的是搜尋方向不同,返回目標所在位置下標;
4)trim:去掉字元前後的空格;
5)touppercase,tolocaleuppercase,tolowercase,tolocalelowercase:不用解釋了;
6)match(pattern):匹配這裡跟正規表示式一樣
7)search(pattern):返回滿足的正規表示式的第乙個的索引;
8)replace:接收2個引數,第乙個為被替換字串,如果不使用正規表示式,則只替換匹配的第乙個正規表示式,要取代所有字串則需要正規表示式,第二個引數為新字串
9)split:接收2個引數,目的是將字串分割為陣列;
10)localecompare:表示引數字串與字串本身比較,如果引數字串首字母按照字母順序排在字串本身第乙個字元之前,返回1,相等返回0,反之-1
11)最為複雜的3個方法
slice:接收2個引數,表示獲取起止位置的子字串;
substring:接收2個引數,表示獲取起止位置子字串;與slice相同均不包含截止位置出的字元;
substr:接受2個引數,表示獲取開始位置處,第二個引數為字串長度;
JS學習第六天
匿名函式 定義 function 引數列表 要執行的語句塊 定義名 建立日期物件 date var date new date alert date 不輸入則是預設月,日,年,時間 物件呼叫方法 物件名.方法名 實參列表 setdate 設定天 setmonth 設定月 setfullyear 年 ...
js陣列去重六法
方法一 雙層迴圈,外層迴圈元素,內層迴圈時比較值,如果有相同的值則跳過,不相同則push進陣列 array.prototype.distinct function result.push arr i return result var arra 1,2,3,4,4,1,1,2,1,1,1 arra....
《劍指offer》第六題(js)
把乙個陣列最開始的若干個元素搬到陣列的末尾,我們稱之為陣列的旋轉。輸入乙個非遞減排序的陣列的乙個旋轉,輸出旋轉陣列的最小元素。例如陣列為的乙個旋轉,該陣列的最小值為1。note 給出的所有元素都大於0,若陣列大小為0,請返回0。思路 首先,要明白非遞減陣列的意思,是增 平,比如 1,2,3,3,4 ...