JQuery сбор данных внутри функции из другой функции - PullRequest
0 голосов
/ 29 сентября 2018

Возможно ли сбор данных из другой функции во время ее работы?

// общая функция

function collectingData(){
   var name = 'tom';
   return name
}

// моя цель здесь

$('.myDiv').click(function(){

   // here I want data from another function
   // collectingData() 

  if( name == 'tom'  ){
     //here I have to finish based of data
  }

})

Ответы [ 6 ]

0 голосов
/ 29 сентября 2018

Звоните так: -

function collectingData(){
  name = 'tom';
  return name
}

 $('.myDiv').click(function(){
 // here I want data from another function
 // 
 var name ='tom'
 if( name == collectingData() ){
 //here I have to finish based of data
 }

})
0 голосов
/ 29 сентября 2018

Почему Дон t you make имя a global variable by removing the preceding var`:

function collectingData(){
   name = 'tom';
 //  return name
}

имя автоматически появляется во всем сценарии

$('.myDiv').click(function(){

   // here I want data from another function
   // collectingData() 

  if( name == 'tom'  ){
     //here I have to finish based of data
  }

})
0 голосов
/ 29 сентября 2018

Вы уже возвращаете имя из коллекционирования данных ();Итак, определите переменную, делайте то, что хотите,

 $('.myDiv').click(function(){
   // here I want data from another function
   // collectingData() 
   var name = collectingData();
  if( name == 'tom'  ){
     //here I have to finish based of data
  }

})
0 голосов
/ 29 сентября 2018

можно!Пока функция, для которой вы собираете данные, не является асинхронной функцией.

Если это асинхронная функция, то в зависимости от возвращаемых данных этой функции мы будем использовать соответствующий подход для обработки этого возврата.data.

Существует две распространенных схемы работы с асинхронной функцией: на основе обратного вызова и на основе обещаний.

0 голосов
/ 29 сентября 2018

Я новичок, поэтому не могу опубликовать это как комментарий, но есть ли причина, по которой вы не можете запустить collectingData() в обработчике кликов, например let name = collectingData()?Это был бы самый простой способ передать данные между ними.

0 голосов
/ 29 сентября 2018

Попробуйте это

   $('.myDiv').click(function(){

   // here I want data from another function
   // collectingData() 
   let name = collectingData();   


  if( name == 'tom'  ){
     //here I have to finish based of data
  }

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