Ваши самые частые ошибки?
Что вы чаще всего видите в консоли, когда после очередного изменения падает весь скрипт?
У меня это: - опечатки (не закрыл скобку, кавычку и т.д.) - описки var elem = document.createElement("DIV"); document.body.appendChild("DIV"); // WRONG_ARGS_ERR // или var elem = document.body.createElement("DIV"); Или лишняя точка с запятой при перечислении в объекте, которую по привычке добавляешь ставишь после длинной строки: var params = { // [...] // [...] cellDefaultStyles : "длинная-длинная" + "строка со стилями"; } Здесь: if ( N.indexOf("px") != -1 ) всё хорошо, но только пока в N не попадёт какой-нибудь event.clientX. Порой случается маразм при копировании небольших кусков кода: var Header = document.createElement("DIV"); document.body.appendChild(Header); Header.style.cssText = options.headerStyles; var Content = document.createElement("DIV"); document.body.appendChild(Header); Header.style.cssText = options.contentStyles; elem.style.heigth elem.style.visibility = "none"; Бессмертная классика. <script type="text/javascript> // [...] // [...] Можно впасть в психоз, /*комментируя*/ куски кода один за другим. В итоге даже простой алерт не работает, консоль молчит, привычная картина мира начинает сыпаться. А я ещё люблю при написании скрипта отбить всё переносами строки, чтобы html не отвлекал и перед глазами был только код на js, т.е. этого <script> мне вообще не видно. elem.style.top = fn(event.clientX); Обычно ошибку видно сразу, но только если параметры не обрабатываются в нескольких местах... Тогда отладка может занять до двух часов, ведь ошибку ищешь в формулах, когда на деле просто перепутаны top и left. for (var i = 0; i < K; i++) { elems[i].onclick = function () { Fn(i); // всегда будет подавать K // если вы недостаточно быстрый, чтобы // кликнуть до того, как отработает for (шутка) |
Очень не хватает Elvis оператора.
var o = {} if (o.coords.lat) {} //Uncaught TypeError: Cannot read property 'lat' of undefined Ну а так, большинство опечаток/ошибок решаются/фиксятся на этапе написания кода, благодаря IDE и линтеру. В TypeScript, с этим ещё проще. |
да такие ошибки у каждого бывают. Это скорее описки, нежели чем ошибки.
|
Diphenyl Oxalate,
Если Sublime пользуетесь, установите Sublime Linter, jslint https://habrahabr.ru/post/262137/ и скобки, точки с запятой останутся в прошлом. у меня самые частые = опечатки в названиях селекторов и кривые регулярки =( |
Цитата:
|
вера в себя, доверие к людям.
|
Цитата:
|
Цитата:
|
div1.onclick = this.handler.bind(this); div2.onclick = this.handler.bind(this, true); ...handler = function(isDiv2) { if(isDiv2) { ... } } Всегда сработает условие isDiv2, потому что по дефолту в аргумент придёт объект Event. Поэтому нужно биндить false. |
Как правило опечатки,либо скобки забудешь закрыть,да и при копировании кодов всякое бывает.
|
Часовой пояс GMT +3, время: 18:19. |