var graph= {
node: [
{ id:"A",
name:"A"
},
{ id:"B",
name:"B"
}
]
}
var yourInput = document.getElementById("vertext").value
// The user inputs A or B..
var convertToInt = graph.node.indexOf(yourInput)+1;
// I am always getting 0 ..
我的解决方案:我遍历图节点对象,检查输入的indexOf是否为A,B ..,然后根据对象数组中存在的IndexOf字母将用户输入转换为整数值。
请有人可以解释我在这里做错了吗??
答案 0 :(得分:1)
由于要针对每个数组元素的属性检查值,因此Array.findIndex是合适的工具,而不是Array.indexOf。
=LookUp(Fields!SKU.Value,
Fields!ItemCode.Value,
Fields!Store.Value, "DataSet3")
内部函数根据yourInput检查每个数组元素的id属性。您可以轻松地对其进行修改,以改为检查name属性,或者进行您可以想到的任何比较。
var convertToInt = graph.node.findIndex(e => e.id == yourInput) + 1;
var graph = {
node: [{
id: "A",
name: "A"
},
{
id: "B",
name: "B"
}
]
}
document.getElementById("vertext").onchange = function() {
var yourInput = document.getElementById("vertext").value
// The user inputs A or B..
var convertToInt = graph.node.findIndex(e => e.id == yourInput) + 1;
document.getElementById("output").textContent = convertToInt;
};