整理常用的JS方法
1.String物件
1.1 String.prototype.charAt()
charAt方法返回指定位置的字元,引數是從0開始編號的位置
var s = new String('abc');
s.charAt(1) // "b"
s.charAt(s.length - 1) // "c"
// 也可以這樣寫:
'abc'.charAt(1) // "b" bad
'abc'[1] // "b" good
1.2 String.prototype.concat()
concat方法用於連線兩個字串,返回一個新字串,不改變原字串。
var one = 1; var two = 2; var three = '3'; ''.concat(one, two, three) // "123" one + two + three // "33"
1.3 String.prototype.slice()
1. slice方法用於從原字串取出子字串並返回,不改變原字串。它的第一個引數是子字串的開始位置,第二個引數是子字串的結束位置(不含該位置)。
2. substring()方法和slice()方法很像,只是當第二個引數小於第一個引數時,substring會自動更換兩個引數的位置
'JavaScript'.slice(0, 4) // "Java"
'JavaScript'.slice(4) // "Script"
1.4 String.prototype.match()
match方法用於確定原字串是否匹配某個子字串,返回一個數組,成員為匹配的第一個字串。如果沒有找到匹配,則返回null。
var matches = 'cat, bat, sat, fat'.match('at'); //['at']
matches.index // 1
matches.input // "cat, bat, sat, fat"
1.5 String.prototype.split()
split方法按照給定規則分割字串,返回一個由分割出來的子字串組成的陣列。
兩個分割符中間沒有其他字元,則返回陣列之中會有一個空字串。
'a||c'.split('|') // ['a', '', 'c']
2. Math物件
2.1 Math.abs(), Math.max(), Math.min()
2.2 Math.floor(), Math.ceil()
1. Math.floor方法返回小於引數值的最大整數(地板值)。
**2. Math.ceil方法返回大於引數值的最小整數(天花板值)。 **
應用舉例:返回數值整數部分的函式
function ToInteger(x) {
x = Number(x);
return x < 0 ? Math.ceil(x) : Math.floor(x);
}
ToInteger(3.2) // 3
ToInteger(3.5) // 3
ToInteger(-3.2) // -3
2.3 Math.round()
用於四捨五入
Math.round(0.1) // 0
Math.round(0.5) // 1
Math.round(0.6) // 1
// 等同於
Math.floor(x + 0.5)
2.4 Math.random()
Math.random()返回0到1之間的一個偽隨機數,可能等於0,但是一定小於1。
應用舉例:1. 任意範圍的隨機數生成函式
function getRandomArbitrary(min, max){
return Math.random() * (max - min) + min
}
應用舉例:2. 任意範圍的隨機整數生成函式
function getRandomArbitrary(min, max){
return Math.floor(Math.random() * (max - min + 1)) + min;
}
應用舉例:3. 返回隨機字元的函式
function random_str(length) {
var ALPHABET = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
ALPHABET += 'abcdefghijklmnopqrstuvwxyz';
ALPHABET += '0123456789-_';
var str = '';
for (var i = 0; i < length; ++i) {
var rand = Math.floor(Math.random() * ALPHABET.length);
str += ALPHABET.substring(rand, rand + 1);
}
return str;
}
random_str(6) // "NdQKOr"
3. Date物件
3.1 返回當前時間
1. Date()
2. new Date()
3. Date.now()
Date.now() // 1364026285194 當前時間距離時間零點(1970年1月1日 )的毫秒數
// 引數為時間零點開始計算的毫秒數
new Date(1378218728000)
// Tue Sep 03 2013 22:32:08 GMT+0800 (CST)
// 引數為日期字串
new Date('January 6, 2013');
// Sun Jan 06 2013 00:00:00 GMT+0800 (CST)
// 引數為多個整數,
// 代表年、月、日、小時、分鐘、秒、毫秒
new Date(2013, 0, 1, 0, 0, 0, 0)
// Tue Jan 01 2013 00:00:00 GMT+0800 (CST)
3.2 Date的相關例項方法
1. toDateString():返回日期字串
2. toTimeString():返回時間字串
3. toLocaleString():完整的本地時間。
4. toLocaleDateString():本地日期(不含小時、分和秒)。
5. toLocaleTimeString():本地時間(不含年月日)。
未完待續。。。