[英]JS to return a single file type for a variety of similar files (e.g. 'mp4' || 'm4v' = 'MOV')
我有一个 populateTable 函数,我正在尝试将从 JSON 文件中读取的几种不同文件类型组合成一种显示类型。 在这种情况下,将 mp4 和 m4v 转换为 MOV — 我没有收到任何错误,但表格中的所有内容都未定义。
function populateTable() {
function setGenericType(type) {
if(type == 'mp4' || type == 'm4v') {
return 'MOV'
}
}
for (const d of data) {
$("#contents").append(`<tr>
<td>${d.title}</td>
<td>${d.year}</td>
<td>${setGenericType(d)}</td>
</tr>`)
}
}
有任何想法吗? 来自 data.js 的 JSON 示例:
{
"title":"Arc Transition",
"year":2016,
"type":"mp4"
}
您将整个数据对象传递给setGenericType
函数,但将参数与字符串进行比较,因此它们永远不会匹配。 如果没有类型匹配,函数返回undefined
。
因此,要么将函数的参数视为传递给它的对象
function setGenericType(d) {
if(d.type == 'mp4' || d.type == 'm4v') {
return 'MOV'
}
}
或者只是将对象的类型传递给您的函数并保持函数原样
for (const d of data) {
$("#contents").append(`<tr>
<td>${d.title}</td>
<td>${d.year}</td>
<td>${setGenericType(d.type)}</td>
</tr>`)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.