0 / 0 / 0
Регистрация: 17.09.2015
Сообщений: 5
1

Не работает часть кода

20.02.2017, 23:51. Показов 566. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте! Только начал учить язык. Вопрос может показаться тупым,но я не понимаю, в чем тут дело. Я написал код, и в нем должны сработать три alert-а, но третий срабатывать никак не хочет, хотя всё верно, вроде как. Посмотрите, пожалуйста.
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var user = {};
user.name = "Vasya";
user.surname = "Petrov";
user.name = "Sergej";
delete user.name;
if(name in user)
    alert(user.name);
else alert("No");
for(p in user)
{
    alert(user[p]);
}
if(surname in user)
    alert(user.surname);
else alert("No");
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.02.2017, 23:51
Ответы с готовыми решениями:

Как работает эта часть кода?
Всем привет. Читаю книгу Data Structures and Algorithms with JavaScript...

Не работает часть кода, элементом ajax
Не работает функция send() <script type="text/javascript"...

Не работает часть кода
по какой-то причине не работает часть кода, ошибок я не замечаю, но код не хочет работать, в чём...

Не работает javascript, который подгружает часть кода, только в Mozille
Чтобы лучше понять работу скрипта, пожалуйста откройте новость, и увидите значек закрытия окна. Во...

1
the hardway first
Эксперт JS
2464 / 1839 / 906
Регистрация: 05.06.2015
Сообщений: 3,604
21.02.2017, 08:20 2
https://developer.mozilla.org/... erators/in
Чтобы проверить есть ли свойство у объекта, оператору in передавайте строковое значение имени свойства.

Почему такое поведение в вашем случае. В первом условии используется глобальная переменная window.name, поэтому срабатывает алерт, и поведение скрипта кажется таким, каким и задумавалось. Но если вы закомментируете delete user.name;, вам в любом случае выдаст alert('No');

Во втором условии выдаст ошибку
Код
ReferenceError: surname is not defined
и поэтому вы не видете третий алерт.
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var user = {};
user.name = "Vasya";
user.surname = "Petrov";
user.name = "Sergej";
delete user.name;
 
if ('name' in user)
  alert(user.name);
else alert("No");
 
for (p in user) {
  alert(user[p]);
}
 
if ('surname' in user)
  alert(user.surname);
else alert("No");
0
21.02.2017, 08:20
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.02.2017, 08:20
Помогаю со студенческими работами здесь

Не работает часть кода
String test = str.replaceAll("Сумма(1,2)>", "sum(1,2);"); Не заменяет в переменной str String...

Не работает часть кода
program Nervnyaya_Kletka; var A, B, I, D, F, K, G, X, Z: longint; S1, C: string; begin...

Почему не работает часть кода?
В файле: <html> <head> <title>PHP Page</title> </head> <body> <?php $myString =...

Почему не работает часть кода?
Всем хай! Почему не работает часть кода с 27 по 29 строчку, в файле с функциями, я получаю в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru