FOUNDATION EXAM 55
基本語法綜合測驗
不要先展開答案。每題先說出「規則 → 執行順序 → 結果」,再核對。
JavaScript
1. let x="5"; x=Number(x)+1; 最後 x?
6,型別是 number。
2. "5" === 5?
false。值看似相同,但型別不同;strict equality 不做 coercion。
3. for(let i=0;i<3;i++) console.log(i) 輸出?
0、1、2。
4. function 沒寫 return,caller 得到什麼?
undefined。
5. [1,2,3].map(x=>x*2)?
[2,4,6];map 建立新 array。
6. querySelector 找不到元素回傳?
null。後續若直接讀 property,可能 TypeError。
7. A / setTimeout(B,0) / C 的同步輸出順序?
A、C,之後才 B。
HTML / CSS
8. id 和 class 主要差別?
id 應作頁面內唯一識別;class 用於分組與重複套用。
9. 表單 label 應如何與 input 對應?
label for 對應 input 的 id。
10. padding 和 margin 差在哪?
padding 在 border 內;margin 在 border 外。
11. Flex 和 Grid 的直覺差異?
Flex 偏一維 axis;Grid 偏二維 rows/columns。
12. CSS 沒生效第一個實用工具?
Browser DevTools Elements / Styles,先看 selector 是否命中與規則是否被覆蓋。
C++
13. 5/2 若兩邊都是 int?
2。
14. compile error 和 runtime error 差在哪?
compile error 在產生 executable 前就失敗;runtime error 是 process 執行後才發生。
15. int& ref=x 的 ref 是什麼?
x 的 reference,透過 ref 修改會影響 x。
16. int* p=&x 中 p 保存什麼?
x 的 address;*p 才是 dereference 後的值。
及格標準不是分數
如果你能解釋至少 12 題,而且不是只背答案,而能講出 execution/failure layer,就可以開始做下一個 mini project。若某一區大量靠猜,就回對應 foundation track。