получить значения переменной из функции - PullRequest
0 голосов
/ 18 февраля 2012

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


<a id="process" onclick='process(,"testing","test value")' href="#">Process</a>

function process(passvar1,passvar2,passvar3) {


  var defvar1 = 'default value 1', 
      defvar2 = 'default value 2', 
      defvar3 = 'default value 3';



  if (typeof(passvar1)=="undefined") {
      passvar1 = defvar1;
      return passvar1;
  }


 if (typeof(passvar2)=="undefined") {
      passvar2 = defvar2;
      return passvar2;
  }


  if (typeof(passvar1)=="undefined") {
      passvar1 = defvar1;
      return passvar3;
  }


  alert ('retuern values here ' + passvar1 + ' ' + passvar2 + ' ' + passvar3);

Код игры: http://jsbin.com/oledeg/

Ответы [ 4 ]

2 голосов
/ 18 февраля 2012

Глядя на ваш комментарий, вы можете просто использовать функцию, подобную этой:

function process(passvar1, passvar2, passvar3) {
   passvar1 = passvar1 || 'default value 1';
   passvar2 = passvar2 || 'default value 2';
   passvar3 = passvar3 || 'default value 3';

   return 'retuern values here ' + passvar1 + ' ' + passvar2 + ' ' + passvar3;
}

alert(process("testing","test value", "third value"));
// retuern values here testing test value third value

В вашей функции, поскольку вы return в каждом условии if, выполняется только первое условие и функция возвращается только с одной переменной.

2 голосов
/ 18 февраля 2012
onclick='process(,"testing","test value")'

Это синтаксическая ошибка. Сделай это

onclick='process(undefined,"testing","test value")'
1 голос
/ 18 февраля 2012

Синтаксическая ошибка в вашем атрибуте onclick, вы вызываете return в каждом из ваших if операторов - если какой-либо из них оценивается как true, вы преждевременно вернетесь из функции, и никогда достичь alert заявление. Просто удалите эти строки, так как они не делают ничего полезного.

0 голосов
/ 18 февраля 2012

посмотрите на

Процесс

при обработке (, var, var)

это то, что вы хотели?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...