jQuery部分測試題
阿新 • • 發佈:2018-12-20
1.
var a=10;
var sayHello=function(){
console.log(a);
var a=20
}
sayHello();
// 答案:undefind
2.
var a=10;
var sayHello=function(){
console.log(a);
a=20
}
sayHello();
//答案:10
3.
var a=10; var sayHello=function(){ setTimeout(function(){ console.log(a) },0); var a=20; } sayHello();
//答案:20
4.對以下陣列進行排序 var arr=[1,44,6,34,25,26], 寫出過程
方法一:
var arr=[1,44,6,34,25,26];
arr.sort(function(a,b){
return a-b; //升序
//return b-a; 降序
})
console.log(arr);
方法二:
var arr=[1,44,6,34,25,26]; for(var i=0;i<arr.length;i++){ for(var j=0;j<arr.length-i-1;j++){ if(arr[j]>arr[j+1]){ arr[j]=arr[j]+arr[j+1]; arr[j+1]=arr[j]-arr[j+1]; arr[j]=arr[j]-arr[j+1]; } } } console.log(arr);
5.將以下兩個變數的值進行交換,寫出過程
方法一(不新增任何變數):
var a=10;
var b=20;
a=a+b;
b=a-b;
a=a-b;
console.log(a,b);
方法二(新增一個變數):
var a=10;
var b=20;
var c=a;
a=b;
b=c;
console.log(a,b);
6.編碼實現,統計字串中每一個字元出現的次數
var str="skjlkjifjskfjdiffjd"; var obj={}; for(var i= 0;i<str.length;i++){ var char=str[i]; if(!obj[char]){ obj[char]=1; } else{ obj[char]++; } } console.log(obj);
7.寫程式找出陣列中最大的數
方法一:
var arr=[2,30,46,38,60,55,70,21,100];
var Array=arr.sort(function(a,b){
return b-a;
});
console.log(Array[0]);
方法二:
var arr=[2,30,46,38,60,55,70,21,100];
var max=arr[0];
for(var i=1;i<arr.length;i++){
if(arr[i]>max){
max=arr[i];
}
}
console.log(max);
8.刪除陣列 [1,2,3,4,5] 中的3和4,寫過程
方法一:
var arr=[1,2,3,4,5]
var index=arr.indexOf(3);
arr.splice(index,2);
console.log(arr);
方法二:
var arr=[1,2,3,4,5]
arr = arr.filter(function(item){
return item!=3 && item!=4;
});
console.log(arr);