面試考察的是對整個知識體系的把握,所以要多多的總結,不要小看這些乙個個的知識點,串在一起的時候,就是大問題了
1 js中使用typeof能得到哪些型別
考點:js的變數型別 number boolean string undefined object function
擴充套件:如何判讀乙個變數是陣列型別
instanceof:判斷乙個函式是否是乙個變數的建構函式
var arr=[1,2,3]arr instanceof array
//true
這個array其實是乙個建構函式,var arr=[1,2,3]其實就是乙個語法糖,真實情況是這樣子的var arr=new array(1,2,3)
擴充套件:如何理解json
json是js當中的乙個內建物件,有兩個常用的api,如下,他不是函式,和math一樣,是乙個內建的物件,同時,json也是一種資料格式
json.stringify()json.parse(
'')
擴充套件:js當中的內建函式 object array functionboolean string numberdate regexp error
2 何時使用 == ?,何時使用 ===?
考點:強制型別轉換
擴充套件:什麼時候發生強制型別轉換
當你需要判斷物件是否有某個屬性的時候,就用==
obj.a==null 相當於obj.a===undefined||obj.a===null
還有一種情況,判讀函式的引數,是否有值
function find(a,b)}
其他的情況下,為了保證不發生強制型別轉換,全部用===
什麼時候發生強制型別轉換?
1)字串拼接
var a=100+'10'//10010
var a=100+10
//110
2)==符號
'1000
'==100
//true
''==false
//true
null==undefined //
true
3) if 語句
if(100)if(''
))
4)邏輯運算
var a="100"&&20
//20
var a=""||20
//20
var a='
20'||30
//'20'
有一種方法,可以幫你快速的判讀,這個值到底是真還是假
var a=100console.log(!!a) //
true
var b=''
console.log(!!b) //
false
3 winow.onload和domcontentloaded的區別
考點:瀏覽器的渲染過程
4.用js建立10個a標籤,點選的時候彈出對應的序號
考點:作用域
5 簡述如何實現乙個模組載入器,實現類似require.js的基本功能
考點:js的模組化
6 實現陣列的隨機排序
考點:js陣列的演算法
7 描述乙個new物件的過程
function foo(name,age)var f=new foo('
lucy
',20
)
第一步:
8.寫乙個原型鏈繼承的例子
function animal()}function dog(name)
}dog.prototype = new animal
var dog = new dog("泰迪")
dog.eat() //eat
這個只是乙個演示的例子,但是,我們是不推薦這樣子寫的,這樣子去面試,真的不是乙個好的選擇
我們來做乙個繫結dom操作的例子
"en">"
box">
微軟筆試面試題目
智力題 1 燒一根不均勻的繩子,從頭燒到尾總共需要1個小時,問如何用燒繩子的方法來確定半小時的時間呢?2 10個海盜搶到了100顆寶石,每一顆都一樣大小且價值連城。他們決定這麼分 1 抽籤決定自己的號碼 1 10 2 首先,由1號提出分配方案,然後大家表決,當且僅當超過半數的人同意時,按照他的方案進...
筆試面試題目1
1.求重合段的長度 size t foo unsigned int a1,size t al1,unsigned int a2,size t al2 其中a1和a2都為無符號陣列,al1和al2為陣列的長度,陣列的長度為偶數。無符號陣列由一對數字區間組成。如下例 a1 為 0,1,3,6,10,20...
筆試面試題目8
1.寫乙個 string類,以及建構函式能是虛函式嗎?class string string char str null 建構函式 string int len,char ch string 析構函式 string string str 複製建構函式 int size 獲得字串長度 string o...