Как использовать символы в качестве параметров для функций javascript

#javascript #parameters #special-characters

#javascript #параметры #специальные символы

Вопрос:

В моем заголовке я использую функцию

  function changefinal(text)
     {      
         if (text == ".")
           {
               final = final   "."; 
           }
     }
  

Но когда я вызываю функцию как changefinal(.), моя конечная переменная не меняется. Не уверен, что я здесь делаю не так. Я неправильно определяю параметр?

Комментарии:

1. Когда и как final определяется?

Ответ №1:

Вы должны заключать свои символы в кавычки. В JavaScript символ двойной кавычки имеет тот же эффект, что и символ одинарной кавычки. Когда вы цитируете что-то в JavaScript, содержимое внутри цитаты интерпретируется буквально, а созданный объект представляет собой строку.

 changefinal(".");
changefinal('.');
  

Если вам когда-либо придется использовать буквальную кавычку внутри той же цитаты (пример " внутри "..." ), префикс внутренней кавычки с помощью обратной косой черты, чтобы избежать кавычки:

 var string = 'I'm Rob W.';
alert(string); //shows: I'm Rob W.

var attempt = 'I'm Rob W.'; //Notice: No backslash
                 ^ Syntax error
  

Комментарии:

1. @user782311 Этот код работает. Ваша проблема находится где-то в другом месте.

2. хорошо, я использую onclick для вызова функции <form action=»» method=»get»> onclick=» changefinal(‘.’)» /> это как-то связано с этим?

3. Для вашей переменной final установлено значение final "." . Где вы обрабатываете final переменную?

4. final объявляется ранее как var final = «»;

5. В глобальной области видимости (= не в функции?). Я имел в виду, как вы узнали, что «Это не работает»? Вы должны были где-то проверить переменную. Как вы это сделали?

Ответ №2:

Ну

 changefinal(.);
  

это синтаксическая ошибка. Вы, вероятно, хотите

 changefinal(".");