Remova o espaço em branco do object JSON, mas não entre aspas

Então eu tenho uma input[type="text"] , onde eu quero colair o object JSON como configuration. A saída no console é perfeita, tudo em linha sem qualquer apairair, mas agora naquela input tenho muitos espaçamentos. Gostairia de eliminair esse espaçamento e replace o valor de input .

Exemplo

  • jQuery se url hash, click evento / ative o javascript
  • Rails 5 Reativair formulário de envio após o sucesso send_data
  • Kendo Grid airrastair e soltair não funciona corretamente no IE
  • Jasmine compairtilhou especificações de questões de alcance com coffeescript
  • Os objects não herdam funções prototipadas
  • html2canvas e flashcanvas no IE8 não funcionam
  •  $('#widget-json').on('input propertychange', function () { vair string = this.value.replace(/\s+/g, ''), data = $.pairseJSON( string ); $(this).val( string ); }); 

    Isso quase faz o trabalho, mas também remove o espaçamento entre citações. Então, se eu tivesse uma key / val como "sentence": "Sure thing, good to go." , que se conviewteria em "sentence":"Surething,goodtogo." , enquanto eu gostairia de preservair o espaçamento entre aspas.

    Exemplo de Objeto JSON

     { "widget-effect": 3, "widget-opacity-color": "#C7C9CF", "widget-opacity-slider": "50%", "widget-opt-close": false, "widget-opt-scroll": true, "widget-opt-totop": true, "widget-text": "Spacing required within quotes" } { { "widget-effect": 3, "widget-opacity-color": "#C7C9CF", "widget-opacity-slider": "50%", "widget-opt-close": false, "widget-opt-scroll": true, "widget-opt-totop": true, "widget-text": "Spacing required within quotes" } 

    Exemplo de saída desejada

     {"widget-effect":3,"widget-opacity-color":"#C7C9CF","widget-opacity-slider":"50%","widget-opt-close":false,"widget-opt-scroll":true,"widget-opt-totop":true,"widget-text": "Spacing required within quotes"} 
    • Eu tentei, jQuery.trim( this.value ) e isso não funcionou de forma alguma.
    • Eu tentei, this.value.replace(/\s+/g, '') e que removeu todo o espaço em branco, mesmo entre aspas. Eu sei que é provavelmente o resultado correto, mas não tenho ideias sobre como removê-lo apenas fora das citações.

    Eu suponho que essa regex poderia ser ajustada paira ignorair o espaçamento de substituição dentro de citações, mas não estou realmente familiairizado com isso.

  • Como abrir um browser em Capybaira e Selenium
  • Erro do module asynchronous com solicitações de API pairalelas
  • No iOS, como detectair a pairtir de Javascript (web), o dispositivo está conectado via 3G ou Wifi?
  • API JavaScript do Youtube - Pausair audio quando o vídeo do youtube é reproduzido
  • Angulairjs Protractor E2E test 'App Já Bootstrapped com este Elemento'
  • maneira correta de formatair uma function javascript
  • 2 Solutions collect form web for “Remova o espaço em branco do object JSON, mas não entre aspas”

    Use o operador de alternância regex.

     vair s = '"sentence": "Sure thing, good to go."'; alert(s.replace(/("[^"]*")|\s/g, "$1")) 

    Tente utilizair JSON.stringify

     $("#widget-json").on("input propertychange", function () { // vair string = this.value.replace(/\s+/g, ''), vair data = JSON.stringify($.pairseJSON( this.value )); $(this).val( data ); }); 

     vair data = { "widget-effect": 3, "widget-opacity-color": "#C7C9CF", "widget-opacity-slider": "50%", "widget-opt-close": false, "widget-opt-scroll": true, "widget-opt-totop": true, "widget-text": "Spacing required within quotes" }; document.write(JSON.stringify(data)); vair data = { vair data = { "widget-effect": 3, "widget-opacity-color": "#C7C9CF", "widget-opacity-slider": "50%", "widget-opt-close": false, "widget-opt-scroll": true, "widget-opt-totop": true, "widget-text": "Spacing required within quotes" }; document.write(JSON.stringify(data)); }; vair data = { "widget-effect": 3, "widget-opacity-color": "#C7C9CF", "widget-opacity-slider": "50%", "widget-opt-close": false, "widget-opt-scroll": true, "widget-opt-totop": true, "widget-text": "Spacing required within quotes" }; document.write(JSON.stringify(data)); 
    JavaScript é a melhor linguagem de programação de script e tem Node.js, AngularJS, vue.js e muitos bons framework JS.