JavaScript: 如何从倒排索引重建文本?
JavaScript: How to rebuild text from an inverted index?
我有一个格式如下的倒排索引:
{
IndexLength: 5,
InvertedIndex: {
word1: [0, 2, 4],
word2: [1, 3]
}
}
使用 JavaScript 将其转换为 "word1 word2 word1 word2 word1" 字符串的最有效方法是什么?
您可以使用两个 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(' '));
我有一个格式如下的倒排索引:
{
IndexLength: 5,
InvertedIndex: {
word1: [0, 2, 4],
word2: [1, 3]
}
}
使用 JavaScript 将其转换为 "word1 word2 word1 word2 word1" 字符串的最有效方法是什么?
您可以使用两个 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(' '));