我得到的结果是:
EMailLabel: "Mailing address"
LogLabel: "User login"
LoginButton: "Enter the program"
为了通过将结果分成几对来操作此结果,我需要使用以下命令将其转换为字符串:
function parse(str, separator) {
var parsed = {};
var pairs =
str.toString().split(separator);
for (var i = 0, len = pairs.length, keyVal; i < len; ++i) {
keyVal = pairs[i].split("=");
if (keyVal[0]) {
parsed[keyVal[0]] = keyVal[1];
}
}
return parsed;
} 但是在说明中:
str.toString().split(separator);
返回值:
{[object Object]: undefined}
什么也不会变成字符串。
如果我使用相同的指令:
str.split(separator);
向我抛出了以下错误:
Uncaught TypeError: str.split is not a function
从网上搜索的结果中,我看到我必须将str
的结果Hashtable
转换为字符串。
我做到了,但不幸的是没有成功
在这个问题上有人可以帮我吗?
答案 0 :(得分:1)
看起来您需要这样的东西:
function parse(map, separator) {
return Object.keys(map).reduce((data, key) => {
data.push(`${key}${separator} "${map[key]}"`);
return data;
}, []).join('\n');
}
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals