|
Задачка на сообразительность
Написать функции для поиска подстроки в строке (аналог String.prototype.indexOf) и разделения строки на массив по разделителю (аналог String.prototype.split). Встроенные функции использовать запрещено, за исключением String.prototype.charAt. Использовать только один цикл.
|
А сами Вы уже не можете? Вон и звание у Вас - Профессор.
|
Могу. Только какой смысл сразу выкладывать всё.
|
а в чем смысл-то?
это задачи не на сообразительность |
Это задачи первого курса специализированного факультета.
|
О да, умные люди из интернета опять меня сделали. Мешок вам на голову и в гараж.
Интересно получается: я выкладываю задачу, дебил не может её решить, говорит мне, что это я дебил и в итоге я и правда с точки зрения остальных выгляжу дебилом. Обратите внимание, что я никого конкретно не назвал дебилом, так что не сочтите за грубость. P. S. я уже неделю не пью рисперидон! |
Это типовая задача для студента-прикладника. Здесь нет и намека на задачу на сообразительность.
|
Повторю свою вторую любимую цитату (конечно, после гаражей и мешка на голове).
Это просто слова. Я тоже могу говорить слова. А вы сделайте что-нибудь. |
Задачки то конечно не на сообразительность, а на лёгкий экзамен. Быстренько состряпал, возможно что-то не учёл, но результаты не отличаются от стандартных функций:
function TestSplit(string, sep) {
var words = [],
word = '',
char = '';
string = string + sep;
for (i = 0; i < string.length; i++) {
char = string.charAt(i);
if (char == sep) {
words.push(word);
word = '';
} else {
word += char;
}
}
return words;
}
alert((TestSplit('1 2 3 4 5', ' ')).join(' - ')); // мой вариант
alert(('1 2 3 4 5'.split(' ')).join(' - ')); // стандартный вариант
function TestIndexOf(string, s) {
var char = '';
for (i = 0; i < string.length; i++) {
char = string.charAt(i);
if (char == s) {
return i;
}
}
}
alert(TestIndexOf('1 2 3 4 5', '4')); // мой вариант
alert('1 2 3 4 5'.indexOf('4')); // стандартный вариант
|
Vulkan,
параметры sep и s могут быть произвольной длины. |
| Часовой пояс GMT +3, время: 07:26. |
|