有魚前端面經
阿新 • • 發佈:2018-11-05
一:有魚
1,設某元素id為show,如何設定其在ios中顯示,在android中不顯示
var userAgent=navigator.userAgent.toLowerCase(); var platform; if(/android/.test(userAgent)){ platform="android"; document.getElementById("show").style.display="none"; }else if(/ios/.test(userAgent)){ platform="ios"; document.getElementById("show").style.display="block"; }
2,若陣列a=[2,1,4,3,7,6],求出a陣列最大的差值
var maxC=function(arr){
var max=Math.max.apply("",arr);
var min=Math.min.apply("",arr);
var c=max-min;
return c;
}
3,設物件obj={a:'1',b:'2'};分別將obj用cookie 和localStorage塞進去
存值:
var _setStorage=function(obj){ var localStorage=window.localStorage; if(localStorage){ localStorage.setItem(obj.a.obj.b); }else{ var _obj=obj.a+"=" +obj.b; document.cookie=_obj; } }
獲取:
var getCookie=function(key){ var result={}; var localStorage=window.localStorage; if(localStorage){ return localStorage.getItem(key); }else{ var cookie=document.cookie.split(";"); cookie.forEach(function(item){ var pair=item.split("="); result[pair[0]]=pair[1]; }); return result[key]; } }
4,如何編寫阻止冒泡,組織預設事件
方法一:
阻止冒泡:
e.stopPropogation()
組織預設事件
e.preventDefault();
方法二:
return false;
5,盒子模型box-sizing的值有哪些:
值一:content-box:預設值,標準盒子模型,width和height只包括內容的寬和高,不包括邊框(border),內邊距(padding),外邊距(margin),注意,邊框,內邊距,外邊距都在盒子的外部,比如:
{
width:350px;
border:10px solid black;
}
那麼在瀏覽器的實際寬度為370px;
值二:border-box: width和height 屬性包括內容,內邊距和邊框,但不包括外邊距,這時文件處於IE盒模型,注意:填充和邊框將處於盒子內,例如:
{
width:350px;
border:10px solid black;
}
導致瀏覽器中呈現的寬度為350px的盒子。內容框不能為負,所以分配為0,
值三:padding-box:width和Height包括內容和內邊距,但不包括邊框和外邊距,使得不可能使用border-box將元素刪除。