1、判斷是否是乙個陣列
function isarray(arr)
isarray([1,2,3]) //true
2、判斷是否是乙個函式(三種)
function isfunction(fn)
3、陣列去重,只考慮陣列中元素為數字或者字串
function newarr(arr));}}
console.log(arr)//[1,2,3,4,5,6,7,8,9]})}
add()
5、去除字串空格(包含三種情況)
function trim(str)
6、判斷是否為郵箱位址
function isemail(emailstr) $]/;
var result = reg.test(emailstr);
if (result) else
}
7、判斷是否是手機號
function ismobilephone(phone) $/;
if (reg.test(phone)) else
}
8、獲取乙個物件裡面第一次元素的數量
function getobjectlength(obj)
}console.log(i);
}var obj = ;
getobjectlength(obj) //2
9、獲取元素相對於瀏覽器視窗的位置,返回乙個物件
function getposition(element)
return ;
}
10、判斷某個字母在字串**現的次數
var str = 'to be, or not to be, that is the question.';
var count = 0;
var pos = str.indexof('e');
while (pos !== -1)
console.log(count) //4
11、計算出陣列**現次數最多的元素
var arrayobj = [1,1, 2, 3, 3, 3,4, 5, 5];
var tepm = '',count =0;
var newarr = new array();
for(var i=0;i12、陣列filter(搜尋功能)
function filteritems(query) )}
13、copy 物件(第一種)
//第一種
var cloneobj =function(obj) ;
if (obj instanceof array)
for (var keyin obj)
return newobj;
};//第二種
function clone(origin , target);
for(var propin origin)
return target;
}
14、深度轉殖
var newobj ={};
function deepclone(origin,target),
tostr = object.prototype.tostring,
arrstr = "[object array]";
for(var propin origin)//判斷obj的key是否是陣列
deepclone(origin[prop],target[prop]);//遞迴的方式
}else}}
return target }
deepclone(obj,newobj);
console.log(newobj)
15、求陣列最大值和最小值
array.prototype.max = function()
array.prototype.min = function()
console.log([1,5,2].max())
16、json陣列去重
function uniquepay(paylist)
}if (!repeat)
}return payarr;
}
17、對比兩個陣列,取出交集
array.intersect = function () ;
for (var i =0; i < arguments.length; i++)
else
}//end else
}//end for j
}//end for i
return result;
}console.log(array.intersect(["1","2", "3"], ["2","3", "4", "5", "6"]))
18、陣列和物件比較。取出物件的key和陣列元素相同的
var arr = ['f00006','f00007','f00008'];
var obj = ],'f00007':}
var newobj = {};
for(var itemin obj)
}console.log(newobj)
19、刪除陣列中某個元素
//第一種
array.prototype.remove = function(val)
}[1,3,4].remove(3)
//第二種
function remove(arr, indx)
}return arr
}
20、判斷陣列是否包含某個元素
array.prototype.contains = function (val)
}return false;
};
[1, 2,3, 4].contains(2)//true
js方法的封裝
為什麼要進行方法的封裝?在平時的生產環境中,我們經常寫出這樣的 function fadd ia,ib function fmul ia,ib 其本質上是這樣的 var fadd function ia,ib var fmul function ia,ib 這樣的話,我們就建立了兩個全域性變數,ia...
JS的幾種封裝方法
1 物件原型封裝 基本思想是在原函式中建立getter和setter方法,之後在原函式的原型進行其他操作。好處 只能通過get和set訪問函式中的資料,實現額真正的封裝,實現了屬性的私有化 劣處 這樣做所有的方法都在物件中,會增加記憶體的開銷 測試demo 1 這種封裝個方法getter和sette...
JS封裝的常用方法
export function getbrowser export function geturlkey name 1 寫入帶有自定義有效期的cookie 使用方式 這是有設定過期時間的使用示例 s20是代表20秒 h是指小時,如12小時則是 h12 d是天數,30天則 d30 用法示例 setco...