1.8 js基础(常用方法小结)

1、获取随机数

var rdm=function(n,m){
        return parseInt(n+Math.random()*(m-n));
    }

2、位数不够补0

function toDou(inum){
        return inum>10?''+inum:'0'+inum;
        }

3、获取非行间样式

var getStyle=function(obj,style){
        return obj.currentStyle?obj.currentStyle[style]:getComputedStyle(obj,false)[style];
 }

4、查找数组中某个元素是否存在

 
function findInArr(arr,num){
    for(var i=0;i<arr.length;i++){
        if(arr[i]==num){
            return true;
        }
    }
    return false;
}

5、求和

<script>
	var getSub=function(){
		var re=0;
		for(var i=0;i<arguments.length;i++){
			re+=arguments[i];
		}
		return re;
	}
	alert(getSub(1,2,3,4,5,6));
	
</script>

6、批量设置样式

<script>
function setStyle(obj,json){
    for(var name in json){
        obj.style[name]=json[name];
    }
}
window.onload=function(){
    var oDiv=document.getElementById('box');
    oDiv.onclick=function(){
        setStyle(oDiv,{'width':'200px','height':'300px'});
    }
}
</script>

7、数组去重

<script>
window.onload=function(){
    var arr=[12,34,56,34,12,56,78,12,34,56];
    /*方法1////////////////////////////////////////////////
    var newArr=[];
    function isInArr(arr,inum){
        for(var i=0;i<arr.length;i++){
            if(arr[i]==inum){
                return true;
            }
        }
        return false;
    }
    
    for(var i=0;i<arr.length;i++){
        if(!isInArr(newArr,arr[i])){
            newArr.push(arr[i]);
        }
    }
    alert(newArr);//12,34,56,78
    */
    //方法2////////////////////////////////////////////////////////
    var json={};
    var newArr=[];
    for(var i=0;i<arr.length;i++){
        json[arr[i]]=arr[i];//对象中的name是不能重复的。
    }
    for(var i in json){
        newArr.push(json[i]);
    }
    alert(newArr);//12,34,56,78     
   //方法3///////////////////////////////////////////////////////////
var arr=[33,1,1,2,2,4,4,5];
arr=arr.sort(function(num1,num2){return num1-num2});
for(var i=0;i<arr.length;i++){
    if(arr[i]==arr[i+1]){
        arr.splice(i,1);
    }
}
alert(arr);
// 方法4////////////////////////////////////////////////////////////////////
var arr=[1,2,1,1,2];
var json={};
var count=0;
for(var i=0;i<arr.length;i++){
    if(json[arr[i]]){//有的话则为真,否则为假。
        json[arr[i]]++;
    }else{
        json[arr[i]]=1;    
    }
}
console.log(json);
/////////////////////////////////////////////////////////////////////////////
<script>
//此时的json可以将数组去重并显示出

var arr=[1,1,1,2,1,1,2,7,7,7,7,4,4,4,];
var json={};
var count=0;
for(var i=0;i<arr.length;i++){
    if(json[arr[i]]){//有的话则为真,否则为假。
        json[arr[i]]++;
    }else{
        json[arr[i]]=1;    
    }
}
//去重并且显示出数组中出现最多次数的元素以及其出现的次数。
var newarr=[];
for(var i in json){
    newarr.push({code:i,count:json[i]});
}

newarr.sort(function(f1,f2){return f2.count-f1.count});
alert(newarr[0].code+','+newarr[0].count);

</script>    
    
}

8、urlToJson

function urlToJson(url){
    var json={};
    var arr=url.split('&');
    for(var i=0;i<arr.length;i++){
        var arr2=arr[i].split('=');
        json[arr2[0]]=arr2[1];
    }
    return json;
}

9、json2url

function jsonToUrl(json){
    var str;
    for(var i in json){
        str+=i+'='+json[i]+'&';
    }
    return str.substring(0,str.length-1);
}

  

 
原文地址:https://www.cnblogs.com/wujiaolong/p/7290432.html