Javascript ошибка предполагается наличие

Случаи возникновения ошибки в IE: «Предполагается наличие идентификатора, строки или числа» (Expected identifier, string. )

Случаи возникновения ошибки в IE:

Разбираемся отчего может возникать ошибка только в Internet Explorer: «Предполагается наличие идентификатора, строки или числа» (Expected identifier, string or number).

Рассмотрим код в котором возникает ошибка. Причём ошибка только в браузере IE (у меня IE8), в остальных браузерах с этим нормально.

. delete : function() < // delete в кавычках, чтобы работало в IE! if(confirm('Совсем-совсем удалить эту запись?')) delEvent(calEvent); // удаляем из БД при редактировании $dialogContent.dialog("close"); >>, cancel : function() < $dialogContent.dialog("close"); >, // > >).show();

Это первый случай ошибки, который много где уже описан. Когда заканчивается перечисление переменных, то после последнего элемента не нужно ставить запятую. Internet Explorer считает это ошибкой и вообще не будет выполнять весь код, не откроет сайт (календарь FullCalendar в моём случае).

Но даже удалив запятую, ошибка не исчезнет. Именно этот случай у меня и возник (запятую ткнул для общности решения проблемы). При просмотре текста ошибки:

Error: Предполагается наличие идентификатора, строки или числа ( Expected identifier, string or number” )

Оказывается в браузере Internet Explorer слово delete — зарезервированное слово и просто так вводить переменную delete нельзя. Решение проблемы: заключить в одинарные кавычки, вот так — ‘delete’.

Правильный код, который будет работать в IE:

. 'delete' : function() < // delete в кавычках, чтобы работало в IE! if(confirm('Совсем-совсем удалить эту запись?')) < . delEvent(calEvent); // удаляем из БД при редактировании $dialogContent.dialog("close"); >>, cancel : function() < $dialogContent.dialog("close"); >> >).show();

stackoverflow.com — это очень толковый и крупный ресурс, лично я решил с его помощью около 70-80% всех своих косяков, хотя сначала не верил в его силу; только придётся перевести проблему и сформулировать на английском.

Using the word class as a key in a Javascript dictionary can also trigger the dreaded «Expected identifier, string or number» error because class is a reserved keyword in Internet Explorer.

 < class : 'overlay'>// ERROR: Expected identifier, string or number

When using a reserved keyword as a key in a Javascript dictionary, enclose the key in quotes.

Hope this hint saves you a day of debugging hell.

А здесь можно видеть список зарезервированных слов, чтобы уже не натыкаться (как видим save и close сюда не входят, поэтому их можем не брать в кавычки).

Список зарезервированных переменных для JavaScript, избегайте называть переменные зарезервированными словами!

abstract else instanceof super
boolean enum int switch
break export interface synchronized
byte extends let this
case false long throw
catch final native throws
char finally new transient
class float null true
const for package try
continue function private typeof
debugger goto protected var
default if public void
delete implements return volatile
do import short while
double in static with

almix
Разработчик Loco, автор статей по веб-разработке на Yii, CodeIgniter, MODx и прочих инструментах. Создатель Team Sense.

Источник

Ошибка. Предполагается наличие ‘)’

Ошибка «Предполагается наличие объекта»
в рамках лабы нужно сделать так чтобы можно было создать каталог, копировать его и удалить.

Ошибка JQuery: Предполагается наличие объекта
Подскажите, пожалуйста, кто знает. Этот скрипт в отдельном js файле .

Ошибка: ‘Предполагается наличие окончания инструкции’
Динамически формирую SQL запрос SQLfirst=’INSERT INTO documents (doctypes, header, announce.

Ошибка компиляции Microsoft VBScript error ‘800a03f6’ Предполагается наличие ‘End’ /rim/main.asp, line 40 else
Привет всем и вся! Я вот получил от шефа задание сделать кое-что на ASP. До этого в глаза его не.

Эксперт JSЭксперт HTML/CSS

userook,
ошибка там только одна — неправильно переданные параметры в slideToggle. Видимо хотели сделать так

jQuery('#searchgo').slideToggle(0.00000001);

ЦитатаСообщение от Qwerty_Wasd Посмотреть сообщение

Эксперт JSЭксперт HTML/CSS

userook, Такая ошибка выскочит, если использовать Ваш вариант. Так как в нем Вы пытаетесь передать восьмеричное число в качестве параметра, заменив один из нолей буквой «o» — смотрим скрин.
Вариант, что предложил я — рабочий. И чтобы Вам не пришлось больше фантазировать, идем в песочницу и смотрим как он работает. В консоли ни одной ошибки.

jQuery(document).ready(function() { jQuery('a#sbutton').click(function() { jQuery('#searchgo').slideToggle(0.00000001); return false; }); });
div id="searchgo">aliqua occaecat non id incididunt ea non exercitation laborum incididunt fugiat do eu aliquip duis sit nulla adipisicing irure exercitation in enim officia aliqua ex ipsum ullamco adipisicing ipsum est consectetur ullamco tempor aute ut ullamco aliqua labore eiusmod voluptate dolor quis ex cupidatat aliqua ad Lorem nostrud sit commodo eu magna sunt nostrud aute irure in veniam laboris anim id in quis labore consectetur reprehenderit cillum proident aliqua commodo esse consequat in voluptate pariatur laborum pariatur veniam tempor enim fugiat deserunt sint non aliquip cupidatat cillum cillum ullamco minim amet sint non tempor amet sint magna dolor dolore eiusmod/div>a id="sbutton" href="#">Скрыть\Показать/a>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
*, *:after, *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 0; margin: 0; outline: 0; } /*стили выше добавлены только для этого примера, в реальном проекте используйте normilize.css\reset.css*/ body { text-align: center; } #searchgo { border: 2px solid #000; margin-bottom: 50px; } a#sbutton { text-decoration: none; border: 2px solid #000; padding: 5px; box-shadow: 3px 3px #000; cursor: pointer; color: #000; } a#sbutton:hover { box-shadow: 2px 2px #000; } a#sbutton:active { box-shadow: 1px 1px #000; }

У меня в начале скрипта ‘use strict’; стоит из-за этого и ошибка. А как переписать тогда slideToggle(0.00000001); я хз

Эксперт JSЭксперт HTML/CSS

userook, нет ошибка не из-за этого. Пройдите в песочницу снова, я сменил режим на строгий, чтобы Вы могли убедиться сами в отсутствии ошибки.

Специально для Вас, сделал страницу и опробовал c EDGE до IE9 —

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
 html lang="en"> head> meta charset="utf-8" /> meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0" /> meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> style> *, *:after, *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 0; margin: 0; outline: 0; } /*стили выше добавлены только для этого примера, в реальном проекте используйте normilize.css\reset.css*/ body { text-align: center; } #searchgo border: 2px solid #000; margin-bottom: 50px; } a#sbutton text-decoration: none; border: 2px solid #000; padding: 5px; box-shadow: 3px 3px #000; cursor: pointer; color: #000; } a#sbutton:hover box-shadow: 2px 2px #000; } a#sbutton:active box-shadow: 1px 1px #000; } style> head> body> div id="searchgo">aliqua occaecat non id incididunt ea non exercitation laborum incididunt fugiat do eu aliquip duis sit nulla adipisicing irure exercitation in enim officia aliqua ex ipsum ullamco adipisicing ipsum est consectetur ullamco tempor aute ut ullamco aliqua labore eiusmod voluptate dolor quis ex cupidatat aliqua ad Lorem nostrud sit commodo eu magna sunt nostrud aute irure in veniam laboris anim id in quis labore consectetur reprehenderit cillum proident aliqua commodo esse consequat in voluptate pariatur laborum pariatur veniam tempor enim fugiat deserunt sint non aliquip cupidatat cillum cillum ullamco minim amet sint non tempor amet sint magna dolor dolore eiusmoddiv>a id="sbutton" href="#">Скрыть\Показатьa> script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"> script> script> 'use strict'; jQuery(document).ready(function() { jQuery('a#sbutton').click(function() { jQuery('#searchgo').slideToggle(0.00000001); return false; }); }); script> body> html>

Источник

Ошибка предполагается наличие объекта jscript что делать

Цитата
Сообщение от Qwerty_Wasd
Посмотреть сообщение

Тогда в хроме «Uncaught SyntaxError: Octal literals are not allowed in strict mode.»

Эксперт JSЭксперт HTML/CSS

userook, Такая ошибка выскочит, если использовать Ваш вариант. Так как в нем Вы пытаетесь передать восьмеричное число в качестве параметра, заменив один из нолей буквой «o» — смотрим скрин.
Вариант, что предложил я — рабочий. И чтобы Вам не пришлось больше фантазировать, идем в песочницу и смотрим как он работает. В консоли ни одной ошибки.

jQuery(document).ready(function()  jQuery('a#sbutton').click(function()  jQuery('#searchgo').slideToggle(0.00000001); return false; >); >);
div id="searchgo">aliqua occaecat non id incididunt ea non exercitation laborum incididunt fugiat do eu aliquip duis sit nulla adipisicing irure exercitation in enim officia aliqua ex ipsum ullamco adipisicing ipsum est consectetur ullamco tempor aute ut ullamco aliqua labore eiusmod voluptate dolor quis ex cupidatat aliqua ad Lorem nostrud sit commodo eu magna sunt nostrud aute irure in veniam laboris anim id in quis labore consectetur reprehenderit cillum proident aliqua commodo esse consequat in voluptate pariatur laborum pariatur veniam tempor enim fugiat deserunt sint non aliquip cupidatat cillum cillum ullamco minim amet sint non tempor amet sint magna dolor dolore eiusmod/div>a id="sbutton" href="#">СкрытьПоказать/a>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
*, *:after, *:before  -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 0; margin: 0; outline: 0; > /*стили выше добавлены только для этого примера, в реальном проекте используйте normilize.cssreset.css*/ body  text-align: center; > #searchgo  border: 2px solid #000; margin-bottom: 50px; > a#sbutton  text-decoration: none; border: 2px solid #000; padding: 5px; box-shadow: 3px 3px #000; cursor: pointer; color: #000; > a#sbutton:hover  box-shadow: 2px 2px #000; > a#sbutton:active  box-shadow: 1px 1px #000; >

У меня в начале скрипта ‘use strict’; стоит из-за этого и ошибка. А как переписать тогда slideToggle(0.00000001); я хз

Эксперт JSЭксперт HTML/CSS

userook, нет ошибка не из-за этого. Пройдите в песочницу снова, я сменил режим на строгий, чтобы Вы могли убедиться сами в отсутствии ошибки.

Специально для Вас, сделал страницу и опробовал c EDGE до IE9 —

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
 html lang="en"> head> meta charset="utf-8" /> meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0" /> meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> style> *, *:after, *:before  -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 0; margin: 0; outline: 0; > /*стили выше добавлены только для этого примера, в реальном проекте используйте normilize.cssreset.css*/ body  text-align: center; > #searchgo border: 2px solid #000; margin-bottom: 50px; > a#sbutton text-decoration: none; border: 2px solid #000; padding: 5px; box-shadow: 3px 3px #000; cursor: pointer; color: #000; > a#sbutton:hover box-shadow: 2px 2px #000; > a#sbutton:active box-shadow: 1px 1px #000; > style> head> body> div id="searchgo">aliqua occaecat non id incididunt ea non exercitation laborum incididunt fugiat do eu aliquip duis sit nulla adipisicing irure exercitation in enim officia aliqua ex ipsum ullamco adipisicing ipsum est consectetur ullamco tempor aute ut ullamco aliqua labore eiusmod voluptate dolor quis ex cupidatat aliqua ad Lorem nostrud sit commodo eu magna sunt nostrud aute irure in veniam laboris anim id in quis labore consectetur reprehenderit cillum proident aliqua commodo esse consequat in voluptate pariatur laborum pariatur veniam tempor enim fugiat deserunt sint non aliquip cupidatat cillum cillum ullamco minim amet sint non tempor amet sint magna dolor dolore eiusmoddiv>a id="sbutton" href="#">СкрытьПоказатьa> script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8 anonymous"> script> script> 'use strict'; jQuery(document).ready(function()  jQuery('a#sbutton').click(function()  jQuery('#searchgo').slideToggle(0.00000001); return false; >); >); script> body> html>

Источник

Читайте также:  Disable select option with javascript
Оцените статью