لقد رأيت أسئلة الاختبار المتعلقة بـ JavaScript التي نشرها شخص ما على Zhihu. سوف أشارككم أنه على الرغم من أن ذلك حدث منذ زمن طويل ، فإن هذه الأسئلة كلاسيكية تمامًا ، مما يجعل الناس يشعرون أن JavaScript هي حقًا لغة مؤلمة.
1.
نسخة الكود كما يلي:
(وظيفة () {
إرجاع حجج نوع ؛
}) () ؛
أ. "كائن"
ب. "صفيف"
جيم "الحجج"
D. "غير محدد"
الجواب: أ
2.
نسخة الكود كما يلي:
var f = function g () {
العودة 23 ؛
} ؛
typeof g () ؛
أ. "الرقم"
ب. "غير محدد"
جيم "وظيفة"
D. eorror
الجواب: د
3.
نسخة الكود كما يلي:
(وظيفة (x) {
حذف x ؛
إرجاع x ؛
}) (1) ؛
A. 1
B. NULL
جيم غير محدد
D. خطأ
الجواب: أ
4.
نسخة الكود كما يلي:
var y = 1 ،
x = y = typeof x ؛
x ؛
A. 1
ب. "الرقم"
جيم غير محدد
D. "غير محدد"
الجواب: د
5.
نسخة الكود كما يلي:
(وظيفة f (f) {
إرجاع typeof f () ؛
})(وظيفة () {
العودة 1 ؛
}) ؛
أ. "الرقم"
ب. "غير محدد"
جيم "وظيفة"
D. خطأ
الجواب: أ
6.
نسخة الكود كما يلي:
var foo = {
شريط: وظيفة () {
إرجاع هذا.
} ،
باز: 1
} ؛
(وظيفة () {
إرجاع وسيطات typeof [0] () ؛
}) (foo.bar) ؛
أ. "غير محدد"
ب. "كائن"
C. "الرقم"
د. "وظيفة"
الجواب: أ
7.
نسخة الكود كما يلي:
var foo = {
شريط: وظيفة () {
إرجاع هذا.
} ،
باز: 1
} ؛
typeof (f = foo.bar) () ؛
أ. "غير محدد"
ب. "كائن"
C. "الرقم"
د. "وظيفة"
الجواب: أ
8.
نسخة الكود كما يلي:
var f = (function f () {
العودة "1" ؛
} ، الدالة g () {
العودة 2 ؛
}) () ؛
نوع F ؛
أ. "سلسلة"
ب. "الرقم"
جيم "وظيفة"
D. "غير محدد"
الإجابة: ب
9.
نسخة الكود كما يلي:
var x = 1 ؛
if (function f () {}) {
x += typeof f ؛
}
x ؛
A. 1
B. "1function"
C. "1 unded"
D. نان
الإجابة: ج
10.
نسخة الكود كما يلي:
var x = [typeof x ، typeof y] [1] ؛
typeof typeof x ؛
أ. "الرقم"
ب. "سلسلة"
جيم "غير محدد"
D. "كائن"
الإجابة: ب
11.
نسخة الكود كما يلي:
(وظيفة (فو) {
إرجاع typeof foo.bar ؛
}) ({
فو: {
شريط: 1
}
}) ؛
أ. "غير محدد"
ب. "كائن"
C. "الرقم"
D. خطأ
الجواب: أ
12.
نسخة الكود كما يلي:
(وظيفة f () {
وظيفة f () {
العودة 1 ؛
}
إرجاع f () ؛
وظيفة f () {
العودة 2 ؛
}
}) () ؛
A. 1
ب ، 2
C. خطأ (مثل "الكثير من العودية")
D. غير محدد
الإجابة: ب
13.
نسخة الكود كما يلي:
وظيفة f () {
العودة و ؛
}
جديد f () مثيل f ؛
أ. صحيح
ب ، خطأ
الإجابة: ب
14.
نسخة الكود كما يلي:
مع (وظيفة (x ، غير محددة) {}) الطول ؛
A. 1
ب ، 2
جيم غير محدد
D. خطأ
الإجابة: ب
15.
نسخة الكود كما يلي:
أي من العبارات التالية ستنشئ خطأ في التشغيل: ()
A.Var OBJ = () ؛
B.Var OBJ = [] ؛
C.Var OBJ = {} ؛
D.Var OBJ = // ؛
الجواب: أ