求任意數(shù)組的最大值
function maxNum(arr){
var max=arr[0];
for (var i = 0; i < arr.length; i++) {
if(max<arr[i]){
max=arr[i];
};
};
console.log(max);
};
求任意數(shù)組的最小值
function minNum(arr){
var min=arr[0];
for (var i = 0; i < arr.length; i++) {
if(min>arr[i]){
min=arr[i];
};
};
console.log(min);
}
//求任意范圍數(shù)字和
function addArr(min,max){
var sun=0;
for (var i = min; i <= max; i++) {
sun+=i;
};
console.log(sun);
};
求任意數(shù)字的總和
function addNum(a,b,c,...values){
//rest參數(shù) 做為形參最后一個(gè)參數(shù)
console.log(values)
}
// type 檢測參數(shù)數(shù)據(jù)類型 根據(jù) < > 求最大或最小值
function best(a,type){
if(type=="<"){
minNum(arr1);
}
if(type==">"){
maxNum(arr1);
}
}
在數(shù)組后面添加元素
function push(arr,...values){
for (var i = 0; i < values.length; i++) {
arr[arr.length]=values[i]
};
return arr;
}
遞歸函數(shù)
function down(num){
if(num<=0){
// console.log(num)
return 0;
}else {
down(--num);
console.log(num)
}
}
階乘函數(shù)
function jiecheng(num){
var sun=1
for (var i = num; i >=1; i--) {
sun*=i
};
console.log(sun)
}
function jie(num){
if(num==1){
return 1;
}else{
return num*jie(--num)
}
}
從小到大排序
function xiao(arr){
for (var i = 0; i < arr.length; i++) {
for(var j=i+1;j<arr.length;j++){
if(arr[i]>arr[j]){
var tt=arr[i];
arr[i]=arr[j];
arr[j]=tt;
}
}
}
return arr;
}
從大到小排序
function da(arr){
for (var i = 0; i < arr.length; i++) {
for(var j=i+1;j<arr.length;j++){
if(arr[i]<arr[j]){
var tt=arr[i];
arr[i]=arr[j];
arr[j]=tt;
}
}
}
return arr;
}
根據(jù)type類型判斷排序方式
function pai(arr,type='<'){
if(arguments.length<1 || arguments.length>2){
return "請輸入?yún)?shù)";
}
if(!(arr instanceof Array&&arr.length>1)){
return '請輸入正確的數(shù)組'
}
if(type!='<' && type!='>'){
return "請輸入正確類型";
}
if(type=='<'){
return xiao(arr)
}else if(type=='>'){
return da(arr)
}
}
判斷一個(gè)字符串中是否包含另一個(gè)字符串
function isInClude(str,str2){
if(str.indexOf(str2)==-1){
return false;
}else{
return true;
}
}
將制定的字符串替換成'*'號
function tihuan(str,str1){
// str是原字符串 str1是要替換掉的內(nèi)容
let xing='';
for (var i = 0; i < str1.length; i++) {
// 通過循環(huán)判斷要替換內(nèi)容的長度,來決定*號的數(shù)量
xing+="*"
};
//可以用let xing='*'.repeat(str1.length)替換
let newstr=str;
while(newstr.match(str1)!=null){
// 可用(newstr.indexOf(str1)!=-1)替換
// 通過循環(huán)不停的替換,然后賦值給新的字符串
newstr=newstr.replace(str1,xing)
}
return newstr;
}
不區(qū)分大小寫比較兩個(gè)字符串大小
function bijiao(str,str1){
if(str.toLowerCase()>str1.toLowerCase()){
return 'str>str1';
}else{
return 'str<str1';
}
}
打印出一段字符串中某一節(jié)字符串的位置 方法1
function dump(str,str1){
let arr=[]
let xing="*".repeat(str1.length)
let newstr=str;
while(newstr.match(str1)!=null){
arr.push(newstr.indexOf(str1))
// 通過空數(shù)組保存下標(biāo) 然后在循環(huán)外部return,避免直接終止循環(huán),可以在最后獲取到下標(biāo)值,從而進(jìn)行操作
newstr=newstr.replace(str1,xing);
}
return arr;
}
打印出一段字符串中某一節(jié)字符串的位置 方法2
function dumpF(str,str1){
let arr=[];
for (var i = 0; i < str.length; i++) {
if(str.substr(i,str1.length)===str1){
arr.push(i);
}
}
return arr;
}
查找數(shù)組內(nèi)隨機(jī)元素
function yuansu(a,b){
if(a instanceof Array && arguments.length==2){
// 參數(shù)a是一個(gè)數(shù)組對象,并且參數(shù)為2
var arr=[];
for (var i = 0; i <b; i++) {
var num=Math.floor(Math.random()*b);
arr.push(a[num]);
};
return arr;
}
}
判斷數(shù)組內(nèi)是否存在 > 0
function a1 (arr) {
if(!(arr instanceof Array)){
return;
}
for (var i = 0; i < arr.length; i++) {
if(arr[i]>0){
return true;
}
};
return false;
}
判斷數(shù)組內(nèi)是否所有元素都 > 0
function a2(arr) {
for (var i = 0; i < arr.length; i++) {
if(arr[i]<=0){
return false;
}
};
return true;
}
篩選數(shù)組內(nèi) > 0 的元素
function filter(arr){
let newarr=[];
for (var i = 0; i < arr.length; i++) {
if(arr[i]>0){
newarr.push(arr[i]);
}
}
return newarr;
}
判斷數(shù)組內(nèi)是否存在某一個(gè)元素
function arrP(arr,ele){
for (var i = 0; i < arr.length; i++) {
if(arr[i]==ele){
return true;
}
};
}
刪除數(shù)組重復(fù)的元素
function quchong1(arr){
let newarr=[];
for (var i = 0; i < arr.length; i++) {
if(newarr.indexOf(arr[i])==-1){
// 當(dāng)newarr里查詢不到arr[i]的時(shí)候,插入
newarr.push(arr[i]);
}
}
return newarr;
}
function quchong2(arr){
let newarr=[];
for (var i = 0; i < arr.length; i++) {
var flag=arrP(newarr,arr[i]);
// 調(diào)用另外一個(gè)函數(shù),判斷newarr里是否包含arr[i]
if(!flag){
newarr.push(arr[i])
}
}
return newarr;
}
function quchong3(arr){
// 如果當(dāng)前數(shù)組的第i項(xiàng)在當(dāng)前數(shù)組中第一次出現(xiàn)的位置不是i,那么表示第i項(xiàng)是重復(fù)的,忽略掉。否則存入結(jié)果數(shù)組
var newArr = [];
for(var i=0, len=arr.length; i<len; i++){
if(arr.indexOf(arr[i]) == i){
newArr.push(arr[i]);
}
}
return newArr;
}
數(shù)組內(nèi)隨機(jī)獲取任意個(gè)元素
function a5(arr){
let newarr=[];
let n=Math.floor(Math.random()*arr.length);
// 讓獲取的元素個(gè)數(shù)隨機(jī)
for (var i = 0; i < n; i++) {
let num=Math.floor(Math.random()*arr.length);
// 讓獲取元素的內(nèi)容隨機(jī)
newarr.push(arr[num]);
// 插入新數(shù)組
}
return newarr;
}
數(shù)組里隨機(jī)獲取任意個(gè)不重復(fù)元素
function a6(arr){
let newarr=[];
let n=Math.floor(Math.random()*arr.length);
// 讓獲取的元素個(gè)數(shù)隨機(jī)
for (var i = 0; i < n; i++) {
let num=Math.floor(Math.random()*arr.length);
// 讓獲取元素的內(nèi)容隨機(jī)
while(newarr.includes(arr[num])){
// 再循環(huán)的時(shí)候更新顯示的數(shù)量,arr的下標(biāo)
num=Math.floor(Math.random()*arr.length);
n=Math.floor(Math.random()*num);
}
newarr.push(arr[num]);
}
return newarr;
}
讓獲取元素
function $(selector,ranger=document){
let type=typeof selector;
// 檢查參數(shù)的數(shù)值類型,是字符串還是函數(shù)
if(type=="string"){
// 獲取
let select=selector.trim();
// 去除字符串開始的空格,防止傳參失誤
let first=select.charAt(0);
// console.log(select.substr(1))
if(first=='.'){
return ranger.getElementsByClassName(select.substr(1),ranger)
// 返回類名 此時(shí)select已經(jīng)是字符串,所以括號內(nèi)不用輸入引號。
}
if(first=='#'){
return document.getElementById(select.substr(1))
// 返回id名
}
if(/^[a-zA-Z][a-zA-Z1-6]{0,8}$/.test(select)){
return ranger.getElementsByTagName(select)
}
if(/^<[a-zA-Z][a-zA-Z1-6]{0,8}>$/.test(select)){
// 創(chuàng)建一個(gè)
return document.createElement(select.slice(1,-1))
}
}
if(typeof(selector)=="function"){
//添加
addEvent(window,'load',selector)
// window.addEventListener('load',selector)
// window.onload=function () {
// selector()
// }
}
}
封裝樣式(實(shí)現(xiàn)兼容)
function getStyle(obj,attr){
if(window.getComputedStyle){//把方法當(dāng)做一個(gè)屬性
// alert('1');
return getComputedStyle(obj,null)[attr];
}else{
// alert('2');
return obj.currentStyle[attr];
}
}
// /ml(obj[,content])方法
//獲取或設(shè)置某一個(gè)元素的內(nèi)容
//obj指定的對象
//[content]設(shè)置的內(nèi)容(可有[設(shè)置]可無[獲取])
function html(obj,content){
if(content){
//設(shè)置
obj.innerHTML=content;
}else{
//獲取
return obj.innerHTML;
}
}
動畫函數(shù)
// animate(box,{width:400,height:400,left:300},function(){
// box.style.background='green'
// })
// animate(box,{width:400,height:400,left:300},function(){
// animate(box,{left:100})
// })
function animate(obj,attr,callback){
// 對象,對象的屬性和值 json格式 ,回調(diào)函數(shù)
let t=setInterval(move,200);
function move(){
for(let i in attr){
let currentV=parseInt(getComputedStyle(obj,null)[i])+10;
// 獲取當(dāng)前obj的長寬屬性
if(currentV>=attr[i]){
// 如果實(shí)際尺寸達(dá)到要求,
currentV=attr[i];
// 讓當(dāng)前的值等于要求尺寸
clearInterval(t);
// 就清除時(shí)間函數(shù)
if(callback){
// 回調(diào)函數(shù)
callback.call()
}
}
obj.style[i]=currentV+'px';
}
}
}
獲取父元素下所有的子元素集合 標(biāo)簽
function getChilds(obj){
let arr=[]
obj.childNodes.forEach(function(value,index){
if(value.nodeType==1){
arr.push(value)
}
})
return arr;
獲取父元素下第一個(gè)標(biāo)簽元素
function first (obj) {
return getChilds(obj)[0];
}
獲取父元素下最后一個(gè)標(biāo)簽元素
function last (obj) {
let childs=getChilds(obj);
return childs[childs.length-1]
}
把一個(gè)子元素插入到一個(gè)父元素中,擴(kuò)充到body上,使用的時(shí)候 子元素的appendTo(父元素),會直接插入到你想要的父元素
Node.prototype.appendTo=function (parent) {
parent.appendChild(this)
};
addEvent(obj,'click',fn)
function addEvent(obj,type,fn) {
obj.addEventListener(type,fn,false);
}
判斷兼容,滾輪事件,向上滑動選擇一個(gè)事件,向下另外一個(gè)
function mousewheel(obj,unfn,downfn) {
obj.addEventListener('mousewheel',fn,false)
function fn(e) {
let dir=e.wheelDelta;
if(dir==120 || dir==180 || dir==150){
unfn.call(obj);
}
if(dir==-120 || dir==-180 || dir==-150){
downfn.call(obj);
}
}
}
// 調(diào)用
// mousewheel(box,function () {
// this.style.background='yellow'
// },function () {
// this.style.background='green'
// })
金字塔
function jin(){
let a =30
for(let b = 1; b <= a; b++) {
for(let c = (a-b) *2 ; c >= 0; c--) {
document.write(" ");
}
for(var d = 1; d <= b - 1; d++) {
document.write("A" + "  ");
}
document.write("<br/>");
}
}
var aa=null
functiong(){
}
$(body).on('click','.addphoto',function(){
aa=null;
$("#eadimg").click()
})
$(body).on('click','[data-key="content"]',function(){
aa=this;
$("#eadimg").click()
})