JavaScript基礎知識之方法匯總結,javascript基礎知識

來源:互聯網
上載者:User

JavaScript基礎知識之方法匯總結,javascript基礎知識

數組的方法:

array.concat 一個數組去串連另一個數組,返回一個合成數組。var arrC=arrA.concat(arrB,'asd','sad',true,1.5);
array.join 將數組用指定符號串連為一個字串,並返回這個字串。比用+快很多。var strA=arrA.join(",");//預設為逗號
array.pop 移除數組最後一個元素,並返回這個元素.var A=arrA.pop();
array.push 將一個或多個參數附加到數組的尾部,並返回一個新長度值。arrA.push("asd");
array.shift 移除數組的第一個元素,並返回這個元素。它比pop慢得多,原因我想應該就是這僅僅只是一個偽數組,刪除第一個要將所有的元素往前推一格。var A=arrA.shift();
array.unshift 講一個或多個參數附加到數組的頭部。arrA.unshift("asd");
array.reverse 反轉數組裡元素的順序。var arrB=arrA.reverse();
array.slice 對數組做一段淺複製。然後賦值兩個下標之間的數組,返回一個新的數組。var arrB=arrA.slice(0,3);//將第0,1,2個元素取出,後面的3也可以不填
array.sort 對數組中的內容進行排序。arrA.sort();//預設會吧元素都轉化為字串並進行比較。當然也可以將一個比較函數作為參數傳進去
arrA.sort(function(a,b){
return a-b;
});
array.splice 從數組中移除一個或者多個元素,並用新的元素替代它們。var arrB=arrA.splice(0,3,'asd','ads');//移除從下標0開始的3個元素,並用後面兩個元素進行替換

函數的方法:

function.apply 調用函數,傳遞一個被綁定到this之上的對象,和一個可選的數組作為參數數組。

數位方法:

number.toExponential 將這個數字轉換為一個指數形式的字串。Math.PI.toExponential(2);//3.14e+0
number.toFixed 將這個數字轉換為一個十進位數形式的字串。Math.PI.toFixed(2);//3.14,保留兩位小數
number.toPrecision 將這個數字轉換為一個十進位數形式的字串。Math.PI.toPrecision(2);//3.1,保留兩個有效數字
number.toString 將這個數字轉換為一個字串。Math.PI.toString(2);//這裡的2表示進位,而不是精度

對象的方法:

object.hasOwnProperty 判斷對象是否包含一個以指定字串命名的屬性

Regex的方法:

regexp.exec
如果成功匹配,會返回一個數組。下標0會返回匹配的原字串,1~後面返回的是分組1~捕獲的文本。
如果帶有g標識(全域標識),那麼尋找不是從字串開始的位置開始,而是從regexp.lastIndex開始。如果匹配成功,那麼會設定regexp.lastIndex為匹配成功的字串第一個字元的位置,否則重設為0。
regexp.test 如果成功匹配,返回true,否則false

字串的方法:

string.charAt 返回在字串中指定位置處的字元
string.charCodeAt 返回在字串中指定位置處的字元的ASCII碼值
string.concat 將其它字串串連到一起,返回一個新的合成字串。實際上用+更方便,且更直觀。
string.indexOf 在此字串中尋找指定的另外一個字串,如果找到了,就返回第一個找到的字串的位置,否則返回-1."asdasd".indexOf("sd",2);//值為4,2表示從第3個字元開始尋找
string.lastIndexOf 這個與上面的相似,只不過是從字串尾部開始尋找
string.localeCompare 比較兩個字串。strA.localeCompare(strB);//結果也是返回正數,負數,零,你懂的
string.replace 對一個字串進行尋找並替換的操作,並返回新的字串(以下名字標紅的方法,都是可以應用Regex的)

常規方法:

'asdasd'.replace('as','d');//結果為ddasd,replace只會替換第一次的出現位置。

Regex方法:

加g標識匹配多次,不加匹配一次

var regExp=/ee(asd\d{0,3})/g;//加g標識匹配多次,不加匹配一次
var p='eeasd1323'.replace(regExp,'$1end');//結果為eeasd1323end
//'$1end'的位置也可以放一個函數,每次匹配到會運行這個函數,然後用函數的傳回值替換,這裡就不舉栗子了
'$1end'這個東西的解釋是這樣的:
$$:表示$這個符號
$&: 表示$&整個匹配到的文本
$number:表示分組捕獲到的文本,比如上面的$1就是捕獲分組1捕捉到的文本
$`:匹配之前的文本
$':匹配之後的文本
string.match 讓一個字串和一個Regex匹配。它依據g標識來決定如何進行匹配。
如果沒有g標識,匹配結果與regexp.exec效果一樣
如果有,那麼會產生一個包含所有匹配(除捕獲分組之外這個括弧裡的搞不懂什麼意思,明明就匹配了所有的)的數組
string.search 與indexof相似,只是接收一個Regex匹配而已。此方法忽略g標識。
string.split 將字串分割來建立一個字串數組。此方法忽略g標識。
一般的玩法
var digits='0123456789';
var arr=digits.split('',5);//5表示得到的數組頂多五個元素,多餘的去掉
//結果為['0','1','2','3','4']
Regex的玩法
var text='troy ,123 , good ';
var d=text.split(/\s*,\s*/);//前面講過\s表示unicode各種Null 字元,然後所以匹配的分隔字元就是包含Null 字元的逗號,這樣就自動去掉Null 字元了,好強大
//但是有特例哦,來自分組捕獲的文本會被包含在分割後的字元,所以我個人建議那就別用分組捕獲好了,在這裡沒必要
string.slice 複製字串的一部分來構造一個新的字串
string.substring 與slice效果一樣,只是不能使用負數下標。沒有任何理由使用substring而不是slice(作者說的)。其實是有的,比如字面意思上我就知道什麼意思了。
string.toLowerCase 返回一個全部小寫化的新字串。
string.toLocaleLowerCase 同上,土耳其語專用,所以你就當看不見好了
string.toUpperCase 返回一個全部大寫化的新字串。
string.toLocaleUpperCase 同上,土耳其語專用,所以你就當看不見好了
String.fromCharCode 看好哦,string是大寫哦。所以不是在字串後面調用,而是用String調用。根據一串數字編碼返回一個字串。(我相信你基本上用不到的)

您可能感興趣的文章:
  • js基礎知識(公有方法、私人方法、特權方法)
  • JavaScript基礎知識及常用方法總結

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.