Maison >interface Web >js tutoriel >Quelques conseils pour provoquer facilement des bugs dans la programmation JavaScript
Cet article présente principalement quelques astuces sujettes aux bugs dans la programmation JavaScript. Cet article résume 8 astuces, si vous ne comprenez pas ces astuces, elles vous causeront des problèmes et des bugs dans la programmation. Vous avez besoin que vos amis puissent s'y référer. 🎜>
JavaScript est l'un des langages de programmation les plus populaires aujourd'hui, mais sa popularité est également un effet secondaire des diverses fonctionnalités du langage lui-même. Quelle que soit la beauté du langage, des milliers de personnes l'utilisent encore. chaque jour, des dizaines de milliers de programmeurs ont créé un tas de bugs. Ne vous moquez pas encore des autres, peut-être que vous en faites partie. Pour vous donner un exemple, voici quelques courts extraits de JS tout à fait valables (vous pouvez l'essayer sur votre console) :typeof NaN === 'number' // true Infinity === 1/0 // true 0.1 + 0.2 === 0.3 // false,前面加括号也一样 "3" + 1 // '31' "3" - 1 // 2Croyez-vous toujours c'est votre propre JavaScript ?
1. La plus petite valeur en JS
Number.MIN_VALUE > 0; //trueNumber.MIN_VALUE est utilisée pour la plus petite valeur que JavaScript peut exprimer, qui est 5e-324, mais elle est le plus proche dans JS Un nombre de 0
2. Connexion de chaîne
("foo" + + "bar") === "fooNaN" //true "why I am " + typeof + "" // why I am numberJS est analysé en "foo" ("bar"), qui sera converti "bar" en un nombre
3. fonction parseInt
parseInt('06'); // 6 parseInt('08'); // 0 注意,谷歌新版已修正 parseInt(null, 24) === 23 // true
4. Est-ce qu'un objet est nul
typeof null // object null instanceof Object // false
5. Le contenu renvoyé par return
function myjson() { return [ 2 ] } myjson(); // undefinedLe contenu renvoyé par return doit être sur la même ligne que return
6.
012 == 12 // false '012' == 12 // true "3" + 1 // '31' "3" - 1 // 2 0.1 + 0.2 == 0.3 // false 0.1 + 0.7 == 0.8 // false 0.2 + 0.7 == 0.9 // false 9999999999999999 // 10000000000000000 9999999999999999-1 //10000000000000000 111111111111111111111 // 111111111111111110000
7. Paramètres étranges
function hello(what) { alert(arguments[0]); //vicky what = "world"; return "Hello, " + arguments[0] + "!"; } hello("vicky"); //"Hello, world!"
8. Le signe égal qui gratte la tête
C'est tout. Pour l'intégralité du contenu de ce chapitre, veuillez visiter leNaN === NaN; // false [] == false; // true "" == false; // true null == false; // false [] == ![] // true window.window == window // true window.window === window // false,有些浏览器是true window == document // true,有些浏览器是false ("0" && {}) == 0 // false (0 && {}) == 0 // true 0 == "0" // true [] == 0 // trueTutoriel vidéo JavaScript