JSFiddle - React, Tailwind, and code Playground

by sramam

HTML

<ul id="out"></ul>

JavaScript

function out(msg) {
    msg=decodeURIComponent(msg)
    $('#out').append('<li>').html(msg)
}
    
var esc = encodeURIComponent
  , param = function(obj) {
      var params = []
      params.add =  function(k,v) { 
        this.push(esc(k)+'='+esc(v)) 
      }
      serialize(params, obj)
      return params.join('&').replace('%20','+')
    }
  , serialize = function(params, obj, scope) {
      var isArr  = obj instanceof Array
      for(var key in obj) {
        //key = isArr? i:obj[i]
        var val = obj[key]
        if(scope) key = scope +'['+ (isArr? '':key) +']'
        if(!scope && isArr) params.add(val.name, val.value)
        else if(val instanceof Object) serialize(params, val, key)
        else params.add(key,val)
      }
    }
    
out($.param({a:1,b:2}))
out(param([1,2,3,4]))
//out(param({a:[1,2,3,4,5]}))