свойство length
ребят такая ситуация. Читаю книгу по js но практического опыта нет и как следствие многое не понимаю ибо все достигается путем практического применения. К сути вопроса пробовал данное свойство написать самому!! может кто знает алгоритм работы?? мне важен именно алгоритм!!
|
я плохо понимаю, что вам надо)) давайте вашу программу
|
вот программа
function length_d(string){ var anchor_string = string + 1;//добаляем якорь к строке var massive_alements = []; var count = 0 //счетчик числа обходов в строке for(var i=0;i<=4; i++){ var element = anchor_string.charAt(i); massive_alements.push(element); if (massive_alements[i] == 1){ }else{ count++; } }alert(count - 1); } length_d (" лох") |
суть в том что я не могу понять как сделать цикл for он требует задавать условие окончания цикла а мне изначально неизвестно когда цыкл закончиться!!
|
у вас есть входной параметр string, что внего передается, обычная строка? и что вы хотите получить в конечном итоге с этой строкой. узнать длину или найти кол-во каких то символов?
|
Цитата:
|
тоесть я пытаюсь данное свойство сам написать и делаю следующее
1. в функцию попадает строка. 2. к строке прибавляю единицу чтобы узнать ее конец. как бы якорь. 3. создаю цикл который переберет все элементы строки запишет их в массив и проверит если элемент массива будет моим якорем то мы заканчиваем программу выводим длинну строки - 1 удаляя якорь. и Вот вопрос как это правильно реализовать ведь мы не знаем когда for(var i=0;i<=4; i++) закончиться)) как тут быть?? |
<html>
<head>
<title>example</title>
</head>
<body>
<script>
var str = 'my string';
console.log('длинна строки равна: ' + str.length);
</script>
</body>
</html>
|
блин как бы это до вас до нести string.length понятна но дело в том что я и пытаюсь написать самописную length)) то есть подразумевая что ее нет)))
извиняюсь за глупость но просто для практики переписываю уже готовые функции)) |
мне интересен алгоритм ее работы как она устроена?)) вот в чем вопрос))
|
Скажу сразу, что нативный алгоритм не знаю
function length_d(string){
var count = 0;
while (string.charAt(++count));
alert (count);
}
length_d (" лох")
|
что то получилось..
<html>
<head>
<title>example</title>
</head>
<body>
<script>
function length_d(string)
{
var massive_alements = [];
var count = 0;
for(var i = 0, ln = string.length; i < ln; ++i)
{
var element = string.charAt(i);
massive_alements.push(element);
if (element == 1)
{
console.log('равен единице');
}
else
{
++count;
}
}
console.log(count);
}
length_d ('my string');
</script>
</body>
</html>
|
я чет бред какойто написал))
|
спасибо за помощь ребят)) от всей души благодарю. не подскажете а есть ли книга направленная на практическое применение js??
|
неплохая документация: http://learn.javascript.ru/
а практическое применение? пойдешь на работу там и будет практическое применение)) |
ага вот только без прочного знания на работу сейчас не берут)) работал верстальщиком год и css html и подключал готовые плагины)) но потом призвали в армию)) вернулся и все уже без js никуда)))
|
вот засел за жесткое изучение)))
|
| Часовой пояс GMT +3, время: 14:32. |