# Vue
1. v-if v-show 功能的不同
2. v-for 的功能,v-bind:key 有什麼用
3. component 中父子元件的互動,傳值與呼叫函數
4. 是否知道 Vue 實例(instance)生命週期(lifecycle)
+ 如果有一個 canvas 需要控制,那可以在哪個生命週期階段“儘早地”找到他
+ 要在 Vue 實例中想監聽“頁面捲動”的事件,我該注意什麼
+ 有用過 vue3 嗎
- 說明 composition API 中的生命週期和上述的生命週期有什麼不同
- 該怎麼找到 instance 和 ref
5. 是否知道 Vue 的 Render flow
+ 簡單說明 compile 和 runtime 分別在幹嘛,分成這兩個部分有什麼意義
# JS
1. hoist
``` js
var message = 'foo'
function log () {
console.log(message)
let message = 'bar'
console.log(message)
}
log()
```
2. this
``` js
const func = function func() {
console.log(this.a);
}
const obj = { a: 1, func };
const a = 2;
obj.func()
setTimeout(function () { obj.func() }, 0)
setTimeout(() => { obj.func() }, 0)
setTimeout(obj.func, 0)
```
3. call stack
``` js
const result = []
setTimeout(() => {
console.log(5)
}, 0)
new Promise((resolve) => {
console.log(4)
resolve()
console.log(3)
}).then(() => {
console.log(2)
});
console.log(1)
```
# algorithm
1. 你有兩個等長且所有元素都是整數的陣列 A 和 B,請寫出函數能走訪所有陣列 B 中的元素,且與陣列 A 中所有非當前索引元之素相乘後的結果。
```
範例
INPUT 1
A = [2, 3];
B = [4, 5];
OUTPUT 2
result = [12, 10]
INPUT 2
A = [2, 3, 4];
B = [5, 6, 7];
OUTPUT 3
result = [60, 48, 42]
```
``` js
const func = (A, B) => {
// write your code here
}