1.寫乙個方法將陣列換成前端更易解析的樹狀結構
function gettree(data) ;for (var i = 0; i < data.length; i++) ;
hash[data[i].province]['city'] =
newdata.push(hash[data[i].province]);
} else if (hash[data[i].province].province == data[i].province) )}}
return newdata;
}var data = [, , , , ];
console.log(gettree(data));
乙個迴圈,三層樹狀結構
function gettree(data) ,cityhash = {};
for (var i = 0; i < data.length; i++) ;
cityhash[data[i].city] =
cityhash[data[i].city]['children'] =
hash[data[i].province]['city'] =
hash[data[i].province]['city'].push(cityhash[data[i].city])
newdata.push(hash[data[i].province]);
} else if (hash[data[i].province].province == data[i].province)
cityhash[data[i].city]['children'] =
hash[data[i].province]['city'].push(cityhash[data[i].city])
} else if (cityhash[data[i].city].city == data[i].city) )}}
}return newdata;
}var data = [,
, , , , , ];
console.log(gettree(data));
2.統計字串出現最多的字母
functiongetmax(str) ,
maxstr, max = 1;
for (var i = 0; i < str.length; i++)
else
if (hash[str[i]] >max)
}return
maxstr;
}var str = 'abcdeffggghhhhiiiii';
console.log(getmax(str));
3.排序演算法
functionbubblesort(arr) }}
return
arr;
}var arr = [1, 2, 8, 3, 4, 1];
console.log(bubblesort(arr));
4.去重演算法
functionunique1(arr)
}return
newarr;
}var arr1 = ['b', 'b', 'a', 1, 3, 4, 4];
console.log(unique1(arr1));
function
unique2(arr) ,
newarr =;
for (var i = 0; i < arr.length; i++)
}return
newarr;
}var arr2 = ['b', 'b', 'a', 1, 3, 4, 4];
console.log(unique2(arr2));
function
unique3(arr) }}
return
arr;
}var arr3 = ['b', 'b', 'a', 1, 3, 4, 4];
console.log(unique3(arr3));
5.二分查詢演算法(建立在已經排好序的情況下)
functionbinarysearch(arr, data)
else
if (arr[middle] else
}return -1;
}var arr = [1, 2, 3, 4, 5, 6];
console.log(binarysearch(arr, 2));
前端面試題整理
從瀏覽器位址列輸入url到顯示頁面的步驟 以http為例 在瀏覽器位址列輸入url 瀏覽器檢視快取,如果請求資源在快取中並且新鮮,跳轉到轉碼步驟 如果資源未快取,發起新請求 如果已快取,檢驗是否足夠新鮮,足夠新鮮直接提供給客戶端,否則與伺服器進行驗證。檢驗新鮮通常有兩個http頭進行控制expire...
前端面試題整理
1.html5的新特性。主要講講新增哪些api 地理定位,拖放,web儲存應用快取,webworkers,sse 2.css3的新特性。3 使用嚴格模式的限制有哪些。4 什麼是同源?什麼情況下就屬於跨域?怎麼解決跨域說出三種以上的方法,jsonp原理是什麼。同源 協議,網域名稱,埠相同 方法一 co...
前端面試題整理
js 1 ajax 原理 ajax的基本原理總結 2 原型和原型鏈 原型和原型鏈 3 深拷貝淺拷貝 js的深拷貝和淺拷貝 4 繼承有幾種方式 js繼承的幾種方式 5 閉包 js閉包 6 阻止事件冒泡,和預設事件 阻止事件冒泡,阻止預設事件 7 陣列去重 物件去重 8 陣列有哪些方法 9 promis...