hoe maak ik een array in jQuery?

Hoe maak ik een array in jQuery en gebruik ik die array in plaats van { pageNo: $(this).text(), sortBy: $("#sortBy").val()}


Antwoord 1, autoriteit 100%

Enkele gedachten:

  • jQuery is een JavaScript-bibliotheek, geen taal. Dus JavaScript-arrays zien er ongeveer zo uit:

    var someNumbers = [1, 2, 3, 4, 5];
    
  • { pageNo: $(this).text(), sortBy: $("#sortBy").val()}is een kaart van sleutel tot waarde. Als u een array van de sleutels of waarden wilt, kunt u zoiets als dit doen:

    var keys = [];
    var values = [];
    var object = { pageNo: $(this).text(), sortBy: $("#sortBy").val()};
    $.each(object, function(key, value) {
        keys.push(key);
        values.push(value);
    });
    
  • objecten in JavaScript zijn ongelooflijk flexibel. Als u een object {foo: 1}wilt maken, werkt al het volgende:

    var obj = {foo: 1};
    var obj = {};
    obj['foo'] = 1;
    var obj = {};
    obj.foo = 1;
    

Om af te ronden, wil je dit?

var data = {};
// either way of changing data will work:
data.pageNo = $(this).text();
data['sortBy'] = $("#sortBy").val();
$("#results").load("jquery-routing.php", data);

Antwoord 2, autoriteit 22%

Misschien verwart u Javascript-arrays met PHP-arrays. In PHP zijn arrays erg flexibel. Ze kunnen numeriek geïndexeerd of associatief zijn, of zelfs gemengd.

array('Item 1', 'Item 2', 'Items 3')  // numerically indexed array
array('first' => 'Item 1', 'second' => 'Item 2')  // associative array
array('first' => 'Item 1', 'Item 2', 'third' => 'Item 3')

Andere talen beschouwen deze twee om verschillende dingen te zijn, waaronder JavaScript. Een array in JavaScript is altijd numeriek geïndexeerd:

['Item 1', 'Item 2', 'Item 3']  // array (numerically indexed)

Een “associatieve array”, ook wel hash of kaart genoemd, technisch gezien een object in JavaScript *, werkt als volgt:

{ first : 'Item 1', second : 'Item 2' }  // object (a.k.a. "associative array")

ze zijn niet uitwisselbaar. Als u “Array-sleutels” nodig hebt, moet u een object gebruiken. Als u dat niet doet, maakt u een array.


*Technisch Alles is een object in JavaScript, plaats dat dan opzij voor dit argument. 😉


Antwoord 3, Autoriteit 8%

Niet volledig duidelijk wat je bedoelt. Misschien:

<script type="text/javascript"> 
$(document).ready(function() {
  $("a").click(function() {
    var params = {};
    params['pageNo'] = $(this).text();
    params['sortBy'] = $("#sortBy").val();
    $("#results").load( "jquery-routing.php", params );
    return false;
  });
}); 
</script>

Antwoord 4, Autoriteit 5%

Hier is het duidelijke werkvoorbeeld:

//creating new array
var custom_arr1 = [];
//storing value in array
custom_arr1.push("test");
custom_arr1.push("test1");
alert(custom_arr1);
//output will be  test,test1

Antwoord 5

Ik gebruik jQuery al een tijdje niet meer, maar misschien ben je hier naar op zoek:

jQuery.makeArray(obj)


Antwoord 6

Hier is een voorbeeld dat ik heb gebruikt.

<script>
  $(document).ready(function(){
      var array =  $.makeArray(document.getElementsByTagName(“p”));
      array.reverse(); 
      $(array).appendTo(document.body);
  });
</script>

Antwoord 7

je vraag slaat nergens op. je vraagt hoe je een hash in een array kunt veranderen. Je kunt niet.

u kunt een lijst met waarden maken, of een lijst met sleutels, en geen van beide heeft iets te maken met jQuery, dit is pure javascript

Other episodes