【发布时间】:2017-05-08 09:54:14
【问题描述】:
我有以下格式的倒排索引:
{
IndexLength: 5,
InvertedIndex: {
word1: [0, 2, 4],
word2: [1, 3]
}
}
使用 JavaScript 将其转换为“word1 word2 word1 word2 word1”字符串的最有效方法是什么?
【问题讨论】:
标签: javascript arrays json inverted-index
我有以下格式的倒排索引:
{
IndexLength: 5,
InvertedIndex: {
word1: [0, 2, 4],
word2: [1, 3]
}
}
使用 JavaScript 将其转换为“word1 word2 word1 word2 word1”字符串的最有效方法是什么?
【问题讨论】:
标签: javascript arrays json inverted-index
您可以使用两个forEach() 循环创建数组,然后使用join() 获取字符串。
var obj = {IndexLength: 5,InvertedIndex: {word1: [0, 2, 4],word2: [1, 3]}}
var arr = []
Object.keys(obj.InvertedIndex).forEach(k => obj.InvertedIndex[k].forEach(a => arr[a] = k))
console.log(arr.join(' '))
【讨论】:
这是一个开始的例子。
var obj = {
IndexLength: 5,
InvertedIndex: {
word1: [0, 2, 4],
word2: [1, 3]
}
}
var arr = [];
var temp = obj.InvertedIndex;
for (var key in temp) {
if (temp.hasOwnProperty(key)) {
temp[key].forEach(function(v) {
arr[v] = key;
});;
}
}
console.log(arr.join(' '));
【讨论】: