js考察:
1、基本資料型別:undefined、null、string、number、boolean、array、object。
2、有以下兩個函式,定義乙個物件使其擁有這兩個函式屬性。
function mobile();
a.mobile = mobile();
a.phone = phone();
console.log(a);
3、(考察了物件變數和堆記憶體)
var a =
;var b = a;
b.n = 30;
console.log(a.n);
console.log(b);
輸出的結果是什麼?
看了這個圖就很明了了,變數a和變數b在堆記憶體空間中所指向的位址指標是相同的,所以當b改變時a也會改變。
4、(考察閉包)
var x = 20;
var a =
2)、20
3)、20
4)、true
5)、20
6)、15
這道題中的this都是指向windows,所以this.x的值都為20,第1、2、3、4種情況都很好理解,到第五第六種考察了call這個函式,call的用途:
// 1. 替換函式執行環境中的this
// 2. 傳遞引數
// 3. 執行函式
所以第六種是把this指向了a物件,所以輸出的是a.x就為15。
5、(陣列去重複項,以下是我做的)
var arr = ['a','g','q','d','a','e','q'];
array.prototype.unique = function(){
for(var i = 0;
i < this.length; i++){
for(var j =
i+1; j < this.length; j++){
if(this[i] == this[j]){
this.splice(j,1);
return this;
console.log(arr.unique());
6、編寫乙個函式fn(number n),將數字轉為大寫輸出,如輸入123,輸出一百二十三。
function
fn(n){
if(!/^([1-9]\d*)/.test(n)){
return '非法資料';
var unit = '千百十億千百十萬千百十個';
if(n.length > unit.length){
return '資料過長';
var newstr = '';
var nlength = n.length;
unit = unit.substr(unit.length -
nlength);
for(var i = 0; i < nlength; i++){
newstr += '零一二三四五六七**'.charat(n[i]) + unit.charat(i);
newstr =
newstr.substr(0,newstr.length-1);
newstr = newstr.replace(/零(千|百|十)/g,'零').replace(/(零)+/g,'零').replace(/零(億|萬)/g,'$1');
return newstr;
console.log(fn('205402002103'));
這題考察了正規表示式還有陣列的操作。
2012 我的騰訊暑假實習筆試面試經歷
筆試一般是考c c 作業系統,資料庫,演算法和資料結構,計算機網路,演算法和資料結構是大頭。正好那段時間還參加了乙個演算法比賽,一舉兩得了。技術類的一共3面,第一面試技術面。二面試專案經驗面,三面試hr面。第一面大概會刷掉一半,第二面大概會刷掉2 3,最後一面就基本不刷人了,但最後會根據綜合實力,選...
騰訊2023年實習生招聘筆試面試經歷
4月2號一面,面試官大概是30歲左右。進去先讓我自我介紹一番。然後看了一下我的筆試卷子,問我做的怎樣,我把我那些做錯的題目大概說了一下。接下來就開始對著試卷,針對我做錯的題目,重新問我。其中有道題目,面試的時候還是做錯了,還是做成筆試那個答案,當時有所緊張,還是沒分析出關鍵,後來面試官提示我一下,才...
騰訊2023年實習生招聘筆試面試經歷
4月2號一面,面試官大概是30歲左右。進去先讓我自我介紹一番。然後看了一下我的筆試卷子,問我做的如何,我把我那些做錯的題目大概說了一下。接下來就開始對著試卷,針對我做錯的題目,又一次問我。當中有道題目,面試的時候還是做錯了,還是做成筆試那個答案,當時有所緊張,還是沒分析出關鍵,後來面試官提示我一下,...