Задачки то конечно не на сообразительность, а на лёгкий экзамен. Быстренько состряпал, возможно что-то не учёл, но результаты не отличаются от стандартных функций:
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')); // стандартный вариант