J'ai perdu des heures sur quelque chose qui pourrait être trivial:
J'ai une liste d'adresses e-mail séparées par des virgules que je souhaite convertir en un format JSON spécifique, destiné à être utilisé avec l'API de Mandrill. ( https://mandrillapp.com/api/docs/messages.json.htmlLec a>) p> ma chaîne: p> quoi (je pense), il doit être: p> J'ai un jsfiddle dans lequel je l'ai presque je pense:
http://jsfiddle.net/5J8Z7/1/ P> i ' J'ai regardé dans plusieurs plug-ins jQuery, parmi lesquels: http://code.google.com/p / jquery-json
Mais je continue à obtenir des erreurs de syntaxe. P> Un autre post sur ce que vous avez suggéré de le faire à la main: JavaScript Associative Array à Json p> Cela pourrait être une question triviale, mais la documentation de la codecadamy de l'API de Mandrill a été en panne depuis quelque temps et qu'il n'y a pas d'exemples décents disponibles. P> P>
4 Réponses :
var json = [];
var to = 'bigbadwolf@grannysplace.com,hungry@hippos.com,youtalkin@to.me';
var toSplit = to.split(",");
for (var i = 0; i < toSplit.length; i++) {
json.push({"email":toSplit[i]});
}
Vous faites l'air si facile :-) J'accepterai votre réponse sous peu. Je dois attendre 10 minutes apparemment!
Essayez de changer la boucle à ceci:
var JSON = [];
$(pieces).each(function(index) {
JSON.push({'email': pieces[index]});
});
Merci pour votre réponse! Je l'aurais accepté, mais @anton était d'abord ;-)
Que diriez-vous: sortie: p> démo: http://jsfiddle.net/tymejv/ykpdc/1/ p> p>
Wow, quelle technique étrange. Je n'ai pas vu cela avant!
Essayez cette version ES6 qui a de mieux effectuer le code de code.
p>
'use strict';
let to = 'bigbadwolf@grannysplace.com,hungry@hippos.com,youtalkin@to.me';
let emailList = to.split(',').map(values => {
return {
email: values.trim(),
}
});
console.log(emailList);
Vous pouvez simplement le scinder sur des virgules, mais si vous n'avez aucun contrôle sur les adresses électroniques qui ne sont pas sûrs à 100%, car une adresse électronique valide peut avoir une virgule.