一蚁孔、遞歸
所謂遞歸即函數(shù)自己調(diào)用自己,語(yǔ)法如下:
//fcname:遞歸函數(shù)名
function fcname() {
? ? fcname() {}
}
eg:求10的階乘
function fcname(num) {
? ? if(num<=1) {
? ? ? ? ? ? return 1;
? ? }
? ? else {
? ? ? ? ? ? return fcname(num-1)*num;
? ? }
}
console.log("10!="+fcname(10)); //輸出結(jié)果:10!=3628800
注:其他js內(nèi)置函數(shù)
1豪筝、eval():求字符串中表達(dá)式的值痰滋;
2、isFinite():判斷一個(gè)數(shù)值是否為無(wú)窮大续崖;
3敲街、isNaN():判斷一個(gè)數(shù)值是否為NaN;
4严望、parseInt():將字符型轉(zhuǎn)換為整型多艇;
6、parseFloat():將字符型轉(zhuǎn)換為浮點(diǎn)型像吻;
7峻黍、encodeURI():將字符串轉(zhuǎn)換為有效的URL(ajax請(qǐng)求時(shí)可轉(zhuǎn)換中文用:encodeURI(encodeURI("所發(fā)送的中文字符串")));
8拨匆、encodeURIComponent():將字符串轉(zhuǎn)換為有效的URL組件姆涩;
9、decodeURI():對(duì)encodeURI()編碼的文本進(jìn)行解碼涮雷;
10阵面、decodeURIComponent():對(duì)encodeURIComponent()編碼的文本進(jìn)行解碼;
二洪鸭、數(shù)組操作【點(diǎn)擊查看“更多數(shù)組操作”】
1样刷、冒泡排序、方法如下:
注:所謂冒泡排序览爵,即依次比較數(shù)組中相鄰元素的值置鼻,從小到大(或從大到小)排序蜓竹。
eg:從小到大排序
var arr = [90,85,99,4,50,60,33,15];
for(var i=0; i<arr.length-1; i++) {
? ? for(var j=0; j<arr.length-1-i; j++) {
? ? ? ? ? ? if(arr[j]>arr[j+1]) {
? ? ? ? ? ? ? ? ? ? var temp = arr[j];
? ? ? ? ? ? ? ? ? ? arr[j] = arr[j+1];
? ? ? ? ? ? ? ? ? ? arr[j+1] = temp;
? ? ? ? ? ? }
? ? }
}
console.log(arr); //輸出結(jié)果:[4, 15, 33, 50, 60, 85, 90, 99]
2箕母、數(shù)組去重、方法如下:
function resame(arrs){
? ? var newarr = [];
? ? var json = {};
? ? for(var i = 0; i < arrs.length; i++) {
? ? ? ? if(json[arrs[i]] != arrs[i]) {
? ? ? ? ? ? newarr.push(arrs[i]);
? ? ? ? ? ? json[arrs[i]] = arrs[i];
? ? }
}
return newarr;
}
var arr = [1,2,3,1,2,3,"哈","嗨",4,5,6,4,5,6,"哈","嗨"];
console.log(resame(arr)); //輸出結(jié)果:[1, 2, 3, "哈", "嗨", 4, 5, 6]
三俱济、字符串操作【點(diǎn)擊查看“更多字符串操作”】
1嘶是、去空格,方法如下:
a.字符串去所有空格
var str = " hello world ! ";
var str1 = str.replace(/\s/g, "");
console.log(str1); //輸出結(jié)果:helloworld!
b.jQuery字符串去首尾兩端所有空格方法
var str ="? ? ? ? hello world? ? ? ";
console.log(str.trim()); //輸出結(jié)果:hello world
四蛛碌、面向?qū)ο?/h4>
1聂喇、工廠方法(無(wú)參),方法如下:
function createCar() {
? ? var car = new Object;
? ? car.color = "黑色";
? ? car.run = function() {
? ? ? ? console.log("顏色為"+car.color)
? ? }
? ? return car;
}
var ocar = createCar();
ocar.run(); //輸出結(jié)果:顏色為黑色
2、工廠方法(有參)希太,方法如下:
function createCar(sColor) {
? ? var car = new Object;
? ? car.color = sColor;
? ? car.run = function() {
? ? ? ? console.log("顏色為"+car.color)
? ? }
? ? return car;
}
var ocar = createCar("紅色");
ocar.run(); //輸出結(jié)果:顏色為紅色
3克饶、構(gòu)造函數(shù),方法如下:
function car(sColor) {
? ? this.color = sColor;
? ? this.run = function() {
? ? ? ? console.log("顏色為"+this.color)
? ? }
}
var ocar = new car("白色");
ocar.run(); //輸出結(jié)果:顏色為白色
4誊辉、追加屬性矾湃,方法如下:
function car(sColor) {
? ? car.prototype.color = sColor;
? ? car.prototype.run = function() {
? ? ? ? console.log("顏色為"+this.color)
? ? }
}
var ocar = new car("藍(lán)色");
ocar.run(); //輸出結(jié)果:顏色為藍(lán)色