2016-03-27 23 views
0

Web sitesi için localstorage içeriğini içeren JavaScript kullanarak yapılmış bir dosyam var. Dize edilmiş ve (şimdi) "|" ile ayrılmıştır. Bu dizeyi her "|" sonra bölmek istiyorum Ayrı bir dizeye böylelikle, her bir değişkeni, değeri, değeri ile birlikte, bildiğim kadarıyla birden çok öğeyi bir kerede ayarlayamazsınız. Bölünmüş Virgül Ayrılmış dizgeye ayrılmış dizeler

<input type="file" id="file" accept=".io"> 
<div id="contents"></div> 
<script> 
var X; 
document.getElementById('file').addEventListener('change', 
    function() { 
     var fr = new FileReader(); 
     fr.onload = function() { 
      document.getElementById('contents').textContent = 
       this.result.replace(/,/g,"|").replace(/:/g,",").slice(1,-1); 
     }; 
     fr.readAsText(this.files[0]); 
    } 
); 
localStorage.setItem("test","1223asd3423"); 
</script> 

Ben ne yaptığımı uzun bir ve verimsiz bir his var ... İşte ben bugüne kadar bu var ama araştırma sonrasında ben bir diziye koyarak dışında bir çözüm bulmak için henüz ettik localstorage verilerini dışa aktarma/içe aktarma yolu ve for döngülerinin bir amalgamını ve diğer JavaScript formlarını içeren bir çözüm var.

Settings.io: (.io file extension, not website domain) 

{"AB12_Rubicon":"37","AB9":"99","backgroundColor":"#2e2e2e",....} 

yeni dize istenilen sonucu

Newstring1 = ' "AB12_Rubicon" nin

"AB12_Rubicon","37"|"AB9","99"|"backgroundColor","#2e2e2e"|.... 

örnek: Burada

ham dosya sadece başvuru için biçimlendirilmiş nasıl bir örnektir "37" '; Newstring2 = '"AB9", "99"';

+1

bize bir örnek dizesi ve istenilen sonuca –

+0

Newstring1 = "AB12_Rubicon" Bir vermek bizi minupulation:" 37 " Newstring2 =" AB9 ":" 99 " –

+0

Göremiyorum | Bu dizgede sınırlayıcı. – Andy

cevap

0

ne alıyorsanız

{"AB12_Rubicon":"37","AB9":"99","backgroundColor":"#2e2e2e",....} 

sonra bir dize değil bu giriş ise ben bunu bölmek yok JSON olan bu cevabı ancak şimdiye

ne düzenlersiniz emin im değerleri almak için. bununla birlikte dönmelisiniz. JSON dizgelenmiş ise bunu, ona seni varsayarak şimdi bir dize kullanım JSON.parse(input);

ise basitçe console.log(typeof input); kullanmak kontrol etmek JSON

geri

dönüştürmek gerekir sonra ise

ilk kontrol etmeniz gerekir nesne durum tüm dizildi burada

değerlerini ayıklamak için koddur

for (var key in input){ 
    var current_key = key; // will get value before the ":" 
    var current_value = input[key]; // value after ":" 
    // do what ever you need 
} 
.210

düzenleme: Soru başlığı öylesine OFR dize görünümlü bu soruya rastlamak olabilecek bazı NE Våge edilir

sırf myvariable_with_string.split(',')

İlgili konular