2017-05-19 1 views
-4
// WORKING CODE [CODE1] 
$('.enter-button').on('click', function (e) { 
    e.preventDefault(); 
    var searchValue  = $('.a').val(); 
    var listOfLocations = $('.b').text().trim(); 
    var listSize  = $('.b ul li').size(); 
    if (listOfLocations.indexOf(searchValue) === -1) { 
     switch (listSize) { 
      case 0: 
      case 1: 
       $('.list-left').append('<li>' + searchValue + '</li>'); 
       break; 

      case 2: 
      case 3: 
       $('.list-right').append('<li>' + searchValue + '</li>'); 
       break; 
     } 
    } 
}); 

Aber ich will es tun:JavaScript switch-case-Anweisung Bereich

// CODE THAT I WANT IT TO RUN [CODE2] 
$('.enter-button').on('click', function (e) { 
    e.preventDefault(); 
    var searchValue  = $('.a').val(); 
    var listOfLocations = $('.b').text().trim(); 
    var listSize  = $('.b ul li').size(); 
    if (listOfLocations.indexOf(searchValue) === -1) { 
     switch (listSize) { 
      case (listSize <= 2): 
       $('.list-left').append('<li>' + searchValue + '</li>'); 
       break; 

      case (listSize >= 3): 
       $('.list-right').append('<li>' + searchValue + '</li>'); 
       break; 
     } 
    } 
}); 

Grundsätzlich möchte ich eine Reihe Fall auf meine switch-Anweisung auszuführen, sah ich durch andere Stack-Überlauf Fragen und sie gesagt haben um es wie Code 2 zu machen. Ich konnte es nicht zur Arbeit bringen, also versuche ich etwas Hilfe zu bekommen! Abgesehen davon bin ich auch neugierig darauf, warum die Case-Anweisung es nicht wie CODE2 liest.

+0

Könnten Sie die Antworten verknüpfen, die so etwas wie 'Fall empfohlen (Listsize <= 2) '? –

+0

Wollen Sie wirklich den Fall wechseln? Kannst du nicht verwenden, wenn/sonst was ist hier besser geeignet? –

+0

Warum möchten Sie Schalter Fall auf diese Weise arbeiten? Verwenden Sie einfach, wenn "else if" -Leiter. –

Antwort

3

Es sieht aus wie Sie eine bedingte haben für die Wahl entweder nach links oder nach rechts auf Größe basiert, die Sie in so brechen könnte:

$('.list-' + (listSize <=2 ? 'left' : 'right')).append('<li>' + searchValue + '</li>'); 
Verwandte Themen