Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/15: Рейтинг темы: голосов - 15, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 09.05.2009
Сообщений: 44

Как присвоить переменной значение номера позиции входящей строки?

08.04.2010, 04:43. Показов 3060. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Народ, обясните. Я не могу понять, как присвоить переменной значение номера позиции входящей строки
NN=StringName.lastindexof('a') - stringname - переменная, содержащая строку, а 'а' - любая входящая строка.
На этот код броузер ошибку выдаёт (NN.lastindexof is not a function) .
Не пойму. Зато, если написать NN=StringName.length - прекрасно работает, т.е. присваивает переменной NN число.
Я так понимаю, проблемы из-за того, что в первом случае это метод, а во втором свойство, но как правильно присвоить тогда всё равно не пойму.
Объясните, плиз
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.04.2010, 04:43
Ответы с готовыми решениями:

Как присвоить из строки значение float/double к переменной?
#import "AppDelegate.h" @implementation AppDelegate NSfloat _R=; @end Так нельзя сделать и на подобии тоже)

Как присвоить переменной значение из БД определенного поля, из определенной строки
Подскажите пожалуйста, как правильно присвоить переменной значение из БД SQLiteCommand CMD = db.CreateCommand(); int a =...

Присвоить значение наименьшего элемента массива переменной М1, номер строки, где находится этот элемент, - переменной Т, номер столбца - переменной С
Массив С действительных чисел имеет 5 строк и 11 столбцов. Присвоить значение наименьшего элемента массива переменной М1, номер строки, где...

15
pl
51 / 17 / 6
Регистрация: 18.05.2007
Сообщений: 1,322
08.04.2010, 07:42
lastIndexOf
Соблюдай регистр!
0
0 / 0 / 0
Регистрация: 09.05.2009
Сообщений: 44
09.04.2010, 13:22  [ТС]
Насколько я знаю, значения регистра в названиях функций и методов не играет роли. В любом случае я, разумеется, такую простую вещь проверил ещё до того, как задал вопрос здесь.
0
swed
09.04.2010, 13:33
pl ПРАВ и все методы и функции должны писаться с учетом регистра

а в твоем случае
NN=StringName.lastindexof('a')
должно быть так

StringName - это именно строка, а не скажем имя или id елемента форми, или еще чего

NN = StringName.lastIndexOf('a');
0 / 0 / 0
Регистрация: 09.05.2009
Сообщений: 44
09.04.2010, 13:55  [ТС]
Спасибо, Swed , только поясни, плиз, теперь насчёт 'именно строки'. У меня переменная NN - это значение поля формы. Как тогда сделать, чтобы броузер меня понял и интерпретировал NN именно как строку?
Заранее спасибо
0
swed
09.04.2010, 14:13
У тебя есть выражение

int = string.lastIndexOf('a');

lastIndexOf() - это метод строки

а

результат это число

а дальше ты с этим числом можеш делать все что захочеш,
тоеть оно хоть у тебя и число, но писать его можно вежде и как строку

если я понял твой вопрос, то так. ))

может это лишннее но :
int+int = int;
int+float = float;
int+string = 'int''strind';
0 / 0 / 0
Регистрация: 09.05.2009
Сообщений: 44
09.04.2010, 14:38  [ТС]
Да, конечно, я описался по невнимательности - NN -это число. Я имел в виду переменную StringName - она является значением поля формы. Как её преобразовать в строку? Может ToString() использовать, чтоб преобразовать именно в строку?
0
swed
09.04.2010, 14:50
Достаточно написать

stringName = [елемент].value;
0 / 0 / 0
Регистрация: 09.05.2009
Сообщений: 44
09.04.2010, 15:09  [ТС]
В том то и проблема, что получается недостаточно. Вот мой код:
var StringName=document.forms[k].elements[5].value;
var NN;
NN=StringName.LastIndexOf; - именно на этой строчке получается ошибка!
Причём если эту строчку заменить на
NN=StringName.length - то прекрасно работает.
LastIndexOf - метод, length - свойство, видимо, из-за этого проблема...
0
swed
09.04.2010, 15:18
|В том то и проблема, что получается недостаточно. Вот мой код:
|var StringName=document.forms[k].elements[5].value;
|var NN;
|NN=StringName.LastIndexOf; - именно на этой строчке получается |ошибка!
NN=StringName.lastIndexOf - так писать не мона
NN=StringName.lastIndexOf('a'); так писать нуна

lastIndexOf('a') - это метод который возвращает номер последней позиции буквы 'а' в строке StringName,
а просто StringName ничего не вернет

нужно пользовать length - для того чтобы узнать длинну строки, как ты это и делал

|Причём если эту строчку заменить на
|NN=StringName.length - то прекрасно работает.
|LastIndexOf - метод, length - свойство, видимо, из-за этого |проблема...
0 / 0 / 0
Регистрация: 09.05.2009
Сообщений: 44
09.04.2010, 15:22  [ТС]
блин, сори)). У меня так и есть NN=StringName.LastIndexOf('a')
Проблема, к сож, не в этом...
0
0 / 0 / 0
Регистрация: 09.05.2009
Сообщений: 44
09.04.2010, 15:26  [ТС]
'lastIndexOf('a') - это метод который возвращает номер последней позиции буквы 'а' в строке StringName,
а просто StringName ничего не вернет

нужно пользовать length - для того чтобы узнать длинну строки, как ты это и делал '

ты имеешь в виду указать в методе начальные и конечную позиции поиска?
0
swed
09.04.2010, 16:06
document.forms[k].elements[5].value

elements[5] какого типа этот елемент
если он не INPUT то что ты хочеш присвоить ))
может он ТД или еще чего короче
перед тем как написать

стринг=document.forms[k].elements[5].value

напиши alert(document.forms[k].elements[5].value);
и посмотри что оно тебе выдаст
swed
09.04.2010, 16:07
А лучше напиши что ты вообще хочеш сделать
а я тебе посоветую как это сделать лучше
только если будеш писать то пиши по подробнее
0 / 0 / 0
Регистрация: 09.05.2009
Сообщений: 44
09.04.2010, 18:07  [ТС]
Спасибо, что отвечаешь!
В общем зачем мне это надо: у меня есть форма, с помощью которой я загружаю на сервак сразу два файла(картинку для предпросмотра и картинку основную). Правда написал серверный скрипт немного корявый - обязательно одна(маленькая) картинка должна называться 'ImageName', а другая тогда 'big_ImageName'. Обязательно, чтоб имена совпадали, но только у 'большой' картинки должен быть префикс 'big_'. Тот, кто будет админить на сайте и загружать картинки знает про это, но я решил подстраховаться и помимо серверной проверки имён передаваемых файлов, решил сделать ещё клиентскую проверку на JavaScript. Соответственно метод LastIndexOf мне нужен, чтоб найти последний вход обратного слэша (C:imagesImageName , расширение входит в ImageName)
Соответственно найдя последний ' ', я просто найду прдстроку с именем самого файла, а не полного пути к нему на компе. Тогда и сделаю окончательно проверку.
Я пробовал, конечно, как ты пишешь и выводил алертом значение полей формы - всё нормально - выводится полный путь к выбранному файлу. А в аштмл там - <input type=file .... >
Правда я теперь думаю, может вообще не присваивать никакой переменной этого значения. Просто использовать так:
var SubStringName;
SubStringName=StringName.substring(Strin gName.LastIndexOf(' ')+1)

Сейчас попробую это
0
swed
11.04.2010, 10:29
Ты прав так и надо
только чуть по другому ))

var SubStringName = elementNaForme.value;

SubStringName=
StringName.substring(StringName.LastInde xOf(' '),StringName.length);

вот тогда ты точно получиш то что ты хочеш,
а еще лучше что бы не перебырать елементы на форме (все),
присвой этим двум картинкам на форме id=' ... ', какое хочеш, тогда будет проше
например: страница результат работы скрипта на сервере
будет иметь два рисунка
<input type='file' id='big_...'> ... - это твое название ))
<input type='file' id='...'>

тогда в JavaScript нипешеш

var Big_SubStringName = document.getElementById('big_...').value ;
var SubStringName = document.getElementById('...').value;

Big_SubStringName=
Big_StringName.substring(Big_StringName. LastIndexOf(' '),Big_StringName.length);

SubStringName=
StringName.substring(StringName.LastInde xOf(' '),StringName.length);

ну вроде типа того и не надо перебирать все елементы ))
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.04.2010, 10:29
Помогаю со студенческими работами здесь

Открыть фаил и присвоить значение строки переменной
В общем есть файл, состоящий из цифр и знаков препинания. Записан в столбик. Так же есть цикл, нужно что бы каждый раз в цикле в...

Как присвоить значение переменной, исходя из значения другой переменной?
Всем привет. Нужна помощь. Есть переменная, например &quot;month&quot; которая может принимать значения от 01 до 12, и переменная...

Как переменной описанной в программе присвоить значение переменной в Conditional Compilation Arguments?
Kak mozhno peremennij opisanoj v programme prisvoit` znachenie peremennoj v Conditional Compilation Arguments??? Eto nado chtoto tipa...

Как php переменной присвоить значение переменной javascript?
есть переменная php как ей присвоить значение переменной javascript?

Переменной z присвоить значение последнего элемента последней строки массива d
Переменной z присвоить значение последнего элемента последней строки массива d


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
1С: Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
1С: Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
1С: Программный отбор элементов справочника по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит значение перечислений. / / Событие "НачалоВыбора" реквизита на форме. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru