Search code examples
javascriptstringfunctionvariablesvar

Function title var


I have written a code that finds two strings and in return it should tell me if these two strings are existing:

 function searchTwoString(data, str1, str2) {

   var strX = str1 + " " + strValueX + "\r\n";
   var strY = str2 + " " + strValueY;
   var strValueX;
   var strValueY;

   for (var i = 0; i < data.length; i++) {
     if (data[i] === str1) {
       var strValueX = " exist";
       continue;

     } else if (data[i] === str2) {
       var strValueY = " exist";
       break;
     } 
   }

   return strX + strY;

 }

Achieved result:

str1 undefined

str2 undefined

Expected result:

str1 exist

str2 exist

it tells me my strvalueX & strvalueY are undefined isn't it i have already gave the values in the if statement?

thanks to those who will help out


Solution

  • Here is an answer to your question with comment.

    Hope you understand what I'm talking about.

    function searchTwoString(data, str1, str2) {
    
       var strX;// = str1 + " " + strValueX + "\r\n";
       var strY;// = str2 + " " + strValueY;
       var strValueX;
       var strValueY;
    
       for (var i = 0; i < data.length; i++) {
           if (data[i] === str1) {
               // var strValueX = " exist";
               // do not define again
               strValueX = " exist";
               continue;
    
           } else if (data[i] === str2) {
               // var strValueY = " exist";
               // do not define again
               strValueY = " exist";
               break;
           }
       }
       // define the value here after strValueX and strValueY is set
       strX = str1 + " " + strValueX + "\r\n";
       strY = str2 + " " + strValueY;
    
       return strX + strY;
    

    }