我有2个tsv文件(tec00104.tsv& tec00114.tsv),其中包含有关国家/地区的信息。我想用两个tsv文件中的公共国家制作一个单独的数组。以及随之而来的价值观。这似乎不起作用,为什么?
// initialize array
var countries = [];
for(var i = 0; i < "tec00114.tsv".length; i++)
{
for(var j = 0; j < "tec00104.tsv".length; j++)
{
// if the country code is found in both tsv files
if("tec00114.tsv"[i][2] === "tec00104.tsv"[j][3]);
{
// append new value to the array
countries.push("tec00114.tsv"[i]);
countries.push("tec00104.tsv"[j]);
}
}
}
console.log(countries);
答案 0 :(得分:0)
问题是,您尝试直接从JavaScript引用文件名作为数组。这是不可能的。您需要先加载它们(例如,您可以使用$ .get()函数)。
或者您可以使用Alasql库。
<script src="alasql.min.js"></script>
<script>
var countries = alasql('SELECT t1.*, t2.* FROM TSV("tec00114.tsv") t1 \
JOIN TSV("tec00104.tsv") t2 ON t1.[2] = t2.[3]');
</script>
如果您的TSV文件有标题,请使用“headers:true”选项,如下所示:
SELECT * FROM TSV("tex00114.tsv", {headers:true});