Kennst du JavaScript? Der folgende Artikel stellt Ihnen 12 JavaScript-Interviewfragen vor. Probieren Sie diese 12 Interviewfragen aus und sehen Sie, ob Sie sie alle richtig beantworten können!
JavaScript ist eine grundlegende Technologie, die jeder Front-End-Entwickler beherrschen sollte, aber oft verstehen Sie JavaScript möglicherweise nicht vollständig.
Es gibt zwei sehr einfache Möglichkeiten, das technische Niveau einer Person zu testen: Schauen Sie sich den von ihr geschriebenen Code an oder lassen Sie sie sich den von anderen geschriebenen Code ansehen.
Ich habe einige Codefragen zusammengefasst, die Ihr Verständnis von JavaScript testen können. Sie können es ausprobieren und sehen, ob Sie sie alle richtig beantworten können. Wenn Sie alle Fragen richtig beantworten, wird davon ausgegangen, dass Sie über JavaScript-Kenntnisse verfügen.
Erste Frage
Versuchen Sie, die Ausgabe zu erraten:
const person = { name: '代码与野兽' } Object.defineProperty(person, 'age', { value: 18 }) console.log(person.age) console.log(Object.keys(person))
Ausgabe:
18 ['name']
Analyse:
Viele Leute verwechseln leicht die zweite Ausgabe, da die mit defineProperty definierten Eigenschaften standardmäßig nicht aufzählbar sind. Aufgehoben .
Zweite Frage
Versuchen Sie, die Ausgabe zu erraten:
const name = '代码与野兽' age = 18 console.log(delete name) console.log(delete age) console.log(typeof age)
Ausgabe:
false true "undefined"
Analyse:
Der erste Fehler liegt daran, dass durch Löschen nur Attribute auf dem Objekt gelöscht werden können und der Name kein Attribut ist. Daher ist das Löschen fehlgeschlagen.
Der zweite Grund liegt darin, dass wir zum Erstellen der Variablen keine Deklaration verwenden. Sie wird als globale Variable betrachtet und in das Fensterobjekt eingebunden, was dem Löschen von window.age entspricht, sodass das Löschen erfolgreich ist.
Die dritte Undefiniertheit liegt daran, dass das Alter gelöscht wurde. Die dritte Frage: Versuchen Sie die Ausgabe zu erraten: let person = { name: '代码与野兽' }
const members = [person]
person = null
console.log(members)
[{ name: "代码与野兽" }]
Frage 4
Versuchen Sie, die Ausgabe zu erraten:
let person = X201 const members = [X201] persion = null
function SuperHero() { this.make = '代码与野兽' return { make: '野兽与代码'} } const mySuperhero = new SuperHero() console.log(mySuperhero)
Frage 5
Versuchen Sie, die Ausgabe zu erraten:{ make: "野兽与代码" }
const name = '代码与野兽' console.log(name.padStart(14)) console.log(name.padStart(2))
Frage 6
Versuchen Sie, die Ausgabe zu erraten:
" 代码与野兽" "代码与野兽"
Ausgabe:
console.log(parseInt("7")) console.log(parseInt("7*6")) console.log(parseInt("7Din"))
Frage 7
Versuchen Sie, die Ausgabe zu erraten:7 7 7
[1, 2, 3, 4].reduce((x, y) => console.log(x, y))
Frage 8
Versuchen Sie, die Ausgabe zu erraten:1 2 undefined 3 undefined 4
function getUserInfo(one, two, three) { console.log(one) console.log(two) console.log(three) } const superHero = '代码与野兽' const age = 1000 getUserInfo`${superHero} 是 ${age} 岁` getUserInfo`hello`
Frage 9
Versuchen Sie, die Ausgabe zu erraten:["", " 是 ", " 岁"] "代码与野兽" 1000 ["hello"] undefined undefined
(() => { let x, y; try { throw new Error() } catch (x) { (x = 1), (y = 2); console.log(x) } console.log(x) console.log(y) })()
Frage 10
Versuchen Sie, die Ausgabe zu erraten:1 undefined 2
"function"
解析:
在 JavaScript 中,Class 也是 function。
第十一题
尝试推测它的输出:
const arr = [7, 1, 4, 3, 2]; for (const elem of arr) { setTimeout(() => console.log(elem), elem); }
输出:
1 2 3 4 7
第十二题
尝试推测它的输出:
const foo = { bar: 1 }; with(foo) { var bar = 2 }; console.log(foo.bar);
输出:
2
解析:
with 的对象会作为 global 对象。在 with 使用 var 等价于 window.[xxx]。而这时 foo 就是那个 window。
【相关推荐:javascript学习教程】
Das obige ist der detaillierte Inhalt vonTeilen Sie 12 Interviewfragen, um zu sehen, ob Sie JavaScript beherrschen!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!