- 編寫一個方法弄跌,該方法接收兩個參數(shù),分別為 k 和 一個無序的純數(shù)字數(shù)組尝苇。該方法在執(zhí)行后铛只,會返回數(shù)組中第 k 大的數(shù)字。特別注意糠溜,如果數(shù)組中淳玩,有兩位數(shù)值一樣的數(shù)字,同數(shù)值數(shù)字排名并列非竿。如 [3,1,3,2,5,4,5] 中蜕着,第 1 大的數(shù)字為 5,第2大的數(shù)字為 4红柱,第5大的數(shù)字為 1承匣。
var getkth = function(k,arr){
let temp = {};
for(let i=0; i<arr.length; i++){
if(temp.hasOwnProperty([arr[i]])){
temp[arr[i]] += 1;
}else{
temp[arr[i]]= 1;
}
}
let res = [];
for(let key in temp){
res.unshift(key)
}
return res[k-1];
}
proto 和 prototype 之間有什么關系蓖乘?
二者都是對象的屬性,存儲一個地址指向共有屬性集韧骗。.call(), .apply() .bind() 的區(qū)別和作用嘉抒?bind 方法如何來實現(xiàn)?
call()方法使用一個指定的this值和單獨給出的一個或多個參數(shù)來調(diào)用一個函數(shù)袍暴。
apply()方法接收的是一個包含多個參數(shù)的數(shù)組
bind()方法創(chuàng)建一個新的函數(shù)众眨,在bind()被調(diào)用時,這個新函數(shù)的this被指定為bind()的第一個參數(shù)容诬,而其余參數(shù)將作為新函數(shù)的參數(shù),供調(diào)用時使用沿腰。因此bind()是創(chuàng)建了一個新的函數(shù)览徒,需要手動調(diào)用。
call()颂龙、apply()习蓬、bind()都可以改變this的指向