Get variable from query string, match it to an array in Javascript

I am trying to grab a query string parameter and match it to an array that is getting dynamically generated.

Edit for clarity The url will be something like

I'm outputting my array from liquid (shopify) which seems to be rendering properly when I view the source.

My failing point seems to be setting the actual variable "soldOut", because if I put one of the actual values that I know will be in the array, it returns true.

Fiddle with a static array and functional matching:

I'm just missing the querystring function because I wasn't sure how to do that with JSfiddle

Here is my code:

  var testArray = [
  // shopify liquid to generate values
{% for variant in product.variants %}
{% if variant.inventory_quantity == 0 %}
{{ }},
{% else %}
{% endif %}
{% endfor %}

function GetQueryStringParams(sParam)
    var sPageURL =;
    var sURLVariables = sPageURL.split('&');
    for (var i = 0; i < sURLVariables.length; i++) 
        var sParameterName = sURLVariables[i].split('=');
        if (sParameterName[0] == sParam) 
            return sParameterName[1];

var soldOut = GetQueryStringParams('id');

  if(jQuery.inArray(soldOut, testArray)!==-1)  {
      console.log("The ID was in the test array (out of stock)");
      console.log("The ID wasn't in the test array (so it's in stock or I messed up)");


soldOut is string, but the values in your array are integer. Cast soldOut to an int:

soldOut = +GetQueryStringParams('id');

Need Your Help

Selecting parent next in jquery

jquery find parent-child parent closest

How can I select the parent next element in jquery

How to achieve the method of controller that will be requested by client in interceptor of Spring MVC

servlets spring-mvc request interceptor

I have a requirement of achieving the method of controller in interceptor and the object returned by the method in interceptor.