J'ai vu des questions de test liées à JavaScript publiées par quelqu'un sur Zhihu. Je vais partager avec vous que bien que cela se soit produit il y a longtemps, ces questions sont assez classiques, ce qui fait que les gens sentent que JavaScript est vraiment un langage douloureux.
1 et 1
La copie de code est la suivante:
(fonction () {
Retourner les arguments des arguments;
}) ();
A. "Objet"
B. "tableau"
C. "Arguments"
D. "indéfini"
Réponse: A
2
La copie de code est la suivante:
var f = fonction g () {
retour 23;
};
typeof g ();
A. "Numéro"
B. "indéfini"
C. "fonction"
D. eorror
Réponse: D
3 et 3
La copie de code est la suivante:
(fonction (x) {
supprimer x;
retour x;
}) (1);
A. 1
B. nul
C. indéfini
D. Erreur
Réponse: A
4
La copie de code est la suivante:
var y = 1,
x = y = typeof x;
x;
A. 1
B. "numéro"
C. indéfini
D. "indéfini"
Réponse: D
5
La copie de code est la suivante:
(fonction f (f) {
Retour type de f ();
})(fonction () {
retour 1;
});
A. "Numéro"
B. "indéfini"
C. "fonction"
D. Erreur
Réponse: A
6.
La copie de code est la suivante:
var foo = {
bar: function () {
Renvoyez ce.baz;
},
baz: 1
};
(fonction () {
return typeof arguments [0] ();
}) (foo.bar);
A. "indéfini"
B. "Objet"
C. "numéro"
D. "fonction"
Réponse: A
7
La copie de code est la suivante:
var foo = {
bar: function () {
Renvoyez ce.baz;
},
baz: 1
};
typeof (f = foo.bar) ();
A. "indéfini"
B. "Objet"
C. "numéro"
D. "fonction"
Réponse: A
8
La copie de code est la suivante:
var f = (fonction f () {
retourner "1";
}, fonction g () {
retour 2;
}) ();
typeof f;
A. "String"
B. "numéro"
C. "fonction"
D. "indéfini"
Réponse: B
9.
La copie de code est la suivante:
var x = 1;
if (function f () {}) {
x + = type de f;
}
x;
A. 1
B. "1 fonction"
C. "1 intra-défini"
D. Nan
Réponse: C
10
La copie de code est la suivante:
var x = [typeof x, typeof y] [1];
typeof typeof x;
A. "Numéro"
B. "String"
C. "indéfini"
D. "Objet"
Réponse: B
11
La copie de code est la suivante:
(fonction (foo) {
Retour Typeof Foo.bar;
}) ({
foo: {
Bar: 1
}
});
A. "indéfini"
B. "Objet"
C. "numéro"
D. Erreur
Réponse: A
12
La copie de code est la suivante:
(fonction f () {
fonction f () {
retour 1;
}
retour f ();
fonction f () {
retour 2;
}
}) ();
A. 1
B, 2
C. Erreur (par exemple, «trop de récursivité»)
D. indéfini
Réponse: B
13
La copie de code est la suivante:
fonction f () {
retour f;
}
Nouvelle instance f () de f;
A. vrai
B, faux
Réponse: B
14
La copie de code est la suivante:
avec (fonction (x, non défini) {}) longueur;
A. 1
B, 2
C. indéfini
D. Erreur
Réponse: B
15
La copie de code est la suivante:
Laquelle des déclarations suivantes générera une erreur de course: ()
A.var obj = ();
B.Var obj = [];
C.var obj = {};
D.var obj = //;
Réponse: A