169 похожих чатов

Скажите, мне на собеседовании задали такой вопрос. Расскажи все, что знаешь,

глядя на следующую строчку кода. Но типа
будь внимателен, потому что каждое слово ты должен будешь обосновать.

x.y = 'z';

Я не понял прикола сначала, и просто ответил, что тут обычное присваивание.
(Позже я понял, что надо было отвечать не так.... но рассказываю как было).

"Обычное присваивание" - задумчиво повторил собеседующий. Он попросил меня
рассказать что такое присваивание.

Далее я - это я, т - собеседующий меня технарь.

я: Присваивание = ну это в данном случае запись строки "z" в свойство y
объекта x.
т: Что такое объект, что такое строка?
я: объект - это коллекция свойств, строка - это тип данных
т: Что такое свойство объекта, что можешь сказать о типах данных.
я: Свойство - это пара ключ и значения, типы данных... (понимая, куда дует
ветер, решил отморозиться), типы данных - их обычно 7, ну в ES5 точно.
т: какими 2 способами может происходить запись значения куда либо
я: не понял...?
т: можно записать строку, а можно записать массив
я: ааа, ну по ссылке запись и по значению.
т: что такое массив?
я: я не говорил массив, это сказали вы!
т: ставим + за внимательность. Ладно вернемся к твоим словам. Как по английски
будет слово ссылка?
я: ну эт легко - reference!
т: что такое reference type и есть ли он в этой строчке?
я: (про себя, да твою ж .... ). После этого я стал намного дольше задумываться
над своими ответами. reference type - это ссылочный тип данных, определенный
спецификацией ECMA script. Да , в этом примере reference type есть.
т: чем ссылочный тип данных отличается от ссылки?
я: ссылка - это по факту адрес ячеки памяти. Ссылочный тип данных - это
абстрактная сущность. которая нужна для описания процессов. происходящих в
спеке.
т: (поставил 2 плюсик). Хочешь напишу другую строчку для беседы?
я: (про себя свят свят свят). Нет! =)
т: а ты упорный=). Хорошо продолжаем. Вот ты говоришь идет запись значения
в свойство объекта. А почему оно вообще смогло произойти. Почем не ошибка,
или вообще бы ничего не записалось.
я: вы хотите услышать слово дескриптор?
т: о, поверь когда мы закончим, ты расскажешь даже то, чего ты не знал раньше
я: (пора валить). Хорошо, дескриптор - это фигня, которая регулирует поведение
свойство в объекте.
т: =) ну мы же не будем говорить о фигне?
я: не будем.
т: ты упомянул ES5 ...
я: ... Нет. по ES6 меня лучше не спрашивать
т: почему?
я: там много концепуий которые мне еще непонятны
т: (что-то поставил в блокнот, наверно минус, ну и хай с ним). Ок. Ты заметил,
что тут нет слова var?
я: заметил. Да в строчке. которую вы мне дали этого нет. Значит обсуждать не
можем по вашим же правилам.
т: В исходной строке стоит еще точка с запятой...
я: (ну зараза...). Да, это знак пунктуации в js, который разделяет инструкции
между собой.
т: чем интрукция от личается от выражения? Может ли привести отсутствие точки
с запятой к ошибкам в коде?

........ и тд.

в общем, я даже не представлял, насколько он за**да. Теперь, я уже не могу
спокойно смотреть на x.y = 'z';

Скажите, норма ли так проводить собеседования? И если пройду туда, стоит ли
вообще идти туда работать?

2 ответов

14 просмотров

хотелось бы узнать продолжение разговора))

Ахахахаха

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта