我正在使用iOS Workflow使用“运行草稿操作”将以下字符串{"person":"me","age":"30"}
传递给iOS草稿。
该操作执行此Javascript
var txt = draft.content;
// var jsontest = {"person":"me" ,"age":"30"};
jsontest = txt.match(/{.*}/);
var str = JSON.parse(jsontest)
var list = JSON.stringify(str)
// List is {"person":"me" ,"age":"30"};
keylist = Object.keys(list);
keylist = keylist.join("|");
alert(keylist);
// draft.defineTag('buttons',str);
结果应该按人年龄,但字符串的长度为1|2|3|4|…
我做错了什么。?
答案 0 :(得分:1)
您的大部分代码都是不必要的。你最后得到了大括号之间内容的字符串,并要求它的键,这将是字符串的索引。
如果你想要解析对象中的键,然后解析它(不要将它串回到JSON),并使用Object.keys
。
var jsontest = '{"person":"me" ,"age":"30"}';
var obj = JSON.parse(jsontest);
var keys = Object.keys(obj);
console.log(keys.join("|"));