28.08.2012, 03:20
|
Профессор
|
|
Регистрация: 26.07.2012
Сообщений: 281
|
|
Вопросы на собеседованиях
Собственно, наткнулся случайно на задачки одного человека, которые он задавал на собеседованиях:
без запинки написать функцию add которая складывает a и b и вызывается так: add(a)(b)
и
Write the result of these expressions:
6 / «3»
«2» * «3»
4 + 5 + «px»
«$» + 4 + 5
«4» — 2
«4px» — 2
7 / 0
typeof null
typeof {}[0]
typeof («4px» — 2)
parseInt(«09»)
5 && 2
2 && 5
5 || 0
0 || 5
Задачки, в принципе, не такие и уникальные. Тут в статьях, кажись, все это рассматривается (и забывается), но все равно интересно.
Ради собственного развития и знания, что меня ожидает там впереди, кидайте сюда условия и задания, которые вам задавали/вы задавали на собеседованиях и т.д?
Которые могут охарактеризовать глубину понимания отвечающего.
|
|
28.08.2012, 04:11
|
Профессор
|
|
Регистрация: 26.07.2012
Сообщений: 281
|
|
Maxmaxmахimus,
Там парсер пожрал символы.
Корректно все вот так:
console.log(6/'3')
console.log('2'*'3')
console.log(4+5+'px')
console.log('$'+4+5)
console.log('4' - 2)
console.log('4px' -2)
console.log(7 / 0)
console.log(typeof NaN )
console.log(typeof {}[0] )
console.log(typeof ('4px' - 2) )
console.log(parseInt('09'))
console.log(5 && 2 )
console.log(2 && 5 )
console.log(5 || 0 )
console.log(0 || 5)
alert( !![] + ![] - 1 ) // ???
Эм. [] - что-то. Двойное отрицание чего-то, значит первый элемент тру, второй фолс.
Предполагаю, не глядя, что там будет или НаН или 1+0-1 = 0
|
|
28.08.2012, 04:12
|
|
Тлен
|
|
Регистрация: 02.01.2010
Сообщений: 6,583
|
|
function add(a){
return function(b){
return a+b
}
}
alert([
add(2)(3) //5
,6 / "3" //2
,"2" * "3" //6
,4 + 5 + "px" //'9px'
,"$" + 4 + 5 //'$45'
,"4" - 2 //2
,"4px" - 2 //NaN
,7 / 0 //Infinity
,typeof null //object
,typeof {}[0] //undefined
,typeof ("4px" - 2) //number
,parseInt("09") //хз
,5 && 2 //2
,2 && 5 //5
,5 || 0 //5
].join('\n'))
C parseInt("09") пока не проверишь не узнаешь. Понятно что с нуля - восьмеричная, но как он будет интропретировать такие некорректные данные - хз. Может быть и 9, и NaN, и 0, и 10. Не зная наизусть спецификацию или не проверив на деле - не ответишь.
__________________
29375, 35
Последний раз редактировалось Aetae, 28.08.2012 в 04:15.
|
|
28.08.2012, 10:18
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Сообщение от PashPP
|
без запинки
|
Я тоже иногда люблю позадротничать и погнобить других, особенно если хочу потешить ЧСВ.
Эти вопросы не показывают уровень владения языком. Проще попросить проекты над которыми человек работал и примеры его кода с объяснением почему он писал его именно так. Времени уйдет столько же, а смысла будет гораздо больше.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
28.08.2012, 11:27
|
Профессор
|
|
Регистрация: 26.07.2012
Сообщений: 281
|
|
Gozar,
Тем не менее, судя по отзывам, часто и гнобят и проекты смотрят.
|
|
28.08.2012, 11:42
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
PashPP,
Мне по барабану. Если бы я хотел нанять js интерпретатор, то я бы задавал именно такие вопросы. Эти вопросы абсолютно бесполезны, если человек не может писать сложные приложения или проектировать интерфейсы. Хотя тут, как я и сказал, все зависит от того, кого нужно нанять. Если интерпретатор, то лучших вопросов не найти.
Даже если не знаешь ответа, консоль тебе их даст за секунды.
А примеры на сложение вообще смешно рассматривать, достаточно поставить скобки:
alert([(4 + 5) + "px", "px" + (4 + 5)])
Если проверять начальный уровень знания, то такие примеры могут подойти, а если нужен программист, то почитай требования на работу:
- писать комментарии (нормальную документацию)
- писать расширяемый код
- писать код, который можно читать
- знание ООП, базовое и паттерны
- знание фреймворков
- знание хотябы чуть чуть серверной части
Лично меня уже давно перестало интересовать, что там получиться в 4+4+'px'
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
28.08.2012, 11:45
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
зы: Иногда пишут, умение оценивать время на разработку, что для меня например гораздо важней, чем все приведенные выше примеры. + адекватность
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
28.08.2012, 11:54
|
Профессор
|
|
Регистрация: 26.07.2012
Сообщений: 281
|
|
Gozar,
Да чегож так к примерам и пикселям этим прицепились.
Тема о всяких проверках, а не подобных топикстартовым.
|
|
28.08.2012, 17:24
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Сообщение от PashPP
|
чегож так к примерам и пикселям этим прицепились
|
Наверное потому что они не могут:
Сообщение от PashPP
|
охарактеризовать глубину понимания отвечающего.
|
Заявление: - Я использую GCC (Google Closuer Compiler), - для меня имеет больше смысла, чем пачка базовых вопросов.
Юзайте поиск по форуму, найдете огромное количество задачек, подобных вашим. Эта тема повторяется уже неоднократно.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
28.08.2012, 17:43
|
Профессор
|
|
Регистрация: 26.07.2012
Сообщений: 281
|
|
Видел только просто задачки для... Развлечения.
А спросил о более узконаправленном. Хоть одно другому и не мешает.
Сообщение от Gozar
|
Я использую GCC (Google Closuer Compiler), - для меня имеет больше смысла
|
Эм. И какой именно смысл оно имеет?
|
|
|
|