面試題收集

2022-02-03 06:32:02 字數 938 閱讀 5311

1. 實現乙個add方法

add(1)(2,3)(4).value()  //

輸出: 10

分析:對柯里化函式進行改造

原curry函式

function

curry(f,...args1)

return

inner;

}

改造後curry函式

function curry(f,args1=)

//新增value方法

inner.value = function

()

return

inner;

}

柯里化方法

function

originaladd(...nums))

}let add =curry(originaladd);

console.log('cur:', add(1)(2,3)(4).value());

2.實現乙個非同步佇列queue,要求按時間依次執行callback

new queue().task(1000, function

() ).task(2000, function

() ).start()

分析:task方法只收集引數,在start方法中,將引數轉化為promise,並立即執行

class queue

start(),promise.resolve());

}}function

topromise(time,fn,data),time);

})}

start也可以使用await執行序列promise,這樣傳遞data不太方便

async start()

}

微軟面試題(收集)

1 在排序陣列中,找出給定數字的出現次數,比如 1,2,2,2,3 中2的出現次數是3次。include extern int low 0,high 10,mid 0 void find int a,int p 找到p的其中位置 else low mid int tosit int a,int p ...

C 面試題收集

1 多型是如何實現繫結的?多型的繫結可以分為執行是多型和編譯時多型 編譯時的多型性 編譯時的多型性是通過過載來實現的。對於非虛的成員來說,系統在編譯時,根據傳遞的引數 返回的型別等資訊決定實現何種操作。執行時的多型性 執行時的多型性就是指直到系統執行時,才根據實際情況決定實現何種操作。c 中,執行時...

go面試題收集區

go語言將資料型別分為四類 基礎型別 復合型別 引用型別和介面型別。基礎資料型別包括 復合資料型別包括 在電腦科學領域,反射是指一類應用,它們能夠自描述和自控制。在go中,編譯時不知道型別的情況下,可更新變數 執行時檢視值 呼叫方法以及直接對他們的布局進行操作的機制,稱為反射。場景 無法透視乙個未知...