如何解析没有键的嵌套json's的javascript

How to parse nested json without key's javascript

本文关键字:javascript json 嵌套 何解析      更新时间:2023-09-26

我想在没有任何键的情况下解析嵌套的json数组,请使用JavaScript。

Json数据:

[
["S. No.", "Bank Name", "First 4 Letters of ", "IFSC", "Short Code", "Multimodal Code"],
["1", "Abhyudaya Co-op Bank", "ABHY", "ACB", "*99*87#"],
["2", "Allahabad Bank", "ALLA", "ALB", "*99*54#"],
["3", "Andhra Bank", "ANDB", "ANB", "*99*59#"],
["4", "Apna Sahakari Bank", "ASBL", "APN", "*99*85#"],
["5", "Axis Bank", "UTIB", "AXB", "*99*45#"],
["6", "Bank of Baroda", "BARB", "BOB", "*99*48#"],
["7", "Bank of India", "BKID", "BOI", "*99*47#"],
["8", "Bank of Maharashtra", "MAHB", "BOM", "*99*61#"],
["9", "Bhartiya Mahila Bank", "BMBL", "BMB", "*99*86#"],
["10", "Canara Bank", "CNRB", "CNB", "*99*46#"],
["11", "Central Bank of India", "CBIN", "CBI", "*99*51#"],
["12", "Corporation Bank", "CORP", "CRB", "*99*57#"],
["13", "DCB Bank", "DCBL", "DCB", "*99*65#"],
["14", "Dena Bank", "BKDN", "DNB", "*99*78#"],
["15", "Federal Bank", "FDRL", "FBL", "*99*72#"],
["16", "Gujarat State Co-op Bank", "GSCB", "GSC", "*99*90#"],
["17", "Hasti Co-op Bank", "HCBL", "HCB", "*99*89#"],
["18", "HDFC Bank", "HDFC", "HDF", "*99*43#"],
["19", "ICICI Bank", "ICICI", "ICI", "*99*44#"],
["20", "IDBI Bank", "IBKL", "IDB", "*99*49#"],
["21", "Indian Bank", "IDIB", "INB", "*99*58#"],
["22", "Indian Overseas Bank", "IOBA", "IOB", "*99*52#"],
["23", "IndusInd Bank", "INDB", "IIB", "*99*69#"],
["24", "ING Vysya Bank", "VYSA", "ING", "NA"],
["25", "Janata Sahakari Bank", "JSBP", "JSB", "*99*81#"]
]

这是json格式。我想得到像"Abhyudaya Co-op bank"、"Allahabad bank"这样的银行名称,但不要解析第一个数组:

["S. No.", "Bank Name", "First 4 Letters of ", "IFSC", "Short Code", "Multimodal Code"],

请帮忙。

所以银行名称总是数组中的第二个元素。

// skip first line as it's header.
for (var i = 1; i < banksArray.length; i++) {
    console.log(banksArray[i][1]); // "Abhyudaya Co-op Bank"
}

如果字符串中有此JSON,则使用JSON.parse获取数组的第一个

var arr = JSON.parse( str ); //convert to array object if input is a string
var bankNames = arr.map(function(val){ return val[1] }); //get only bankname second index of each row
bankNames.splice(0,1); //remove first row result

如果输入已经是一个数组,那么忽略第一条语句。

这是您的getBanks()函数。

var bdata = [
["S. No.", "Bank Name", "First 4 Letters of ", "IFSC", "Short Code", "Multimodal Code"],
["1", "Abhyudaya Co-op Bank", "ABHY", "ACB", "*99*87#"],
["2", "Allahabad Bank", "ALLA", "ALB", "*99*54#"],
["3", "Andhra Bank", "ANDB", "ANB", "*99*59#"],
["4", "Apna Sahakari Bank", "ASBL", "APN", "*99*85#"],
["5", "Axis Bank", "UTIB", "AXB", "*99*45#"],
["6", "Bank of Baroda", "BARB", "BOB", "*99*48#"],
["7", "Bank of India", "BKID", "BOI", "*99*47#"],
["8", "Bank of Maharashtra", "MAHB", "BOM", "*99*61#"],
["9", "Bhartiya Mahila Bank", "BMBL", "BMB", "*99*86#"],
["10", "Canara Bank", "CNRB", "CNB", "*99*46#"],
["11", "Central Bank of India", "CBIN", "CBI", "*99*51#"],
["12", "Corporation Bank", "CORP", "CRB", "*99*57#"],
["13", "DCB Bank", "DCBL", "DCB", "*99*65#"],
["14", "Dena Bank", "BKDN", "DNB", "*99*78#"],
["15", "Federal Bank", "FDRL", "FBL", "*99*72#"],
["16", "Gujarat State Co-op Bank", "GSCB", "GSC", "*99*90#"],
["17", "Hasti Co-op Bank", "HCBL", "HCB", "*99*89#"],
["18", "HDFC Bank", "HDFC", "HDF", "*99*43#"],
["19", "ICICI Bank", "ICICI", "ICI", "*99*44#"],
["20", "IDBI Bank", "IBKL", "IDB", "*99*49#"],
["21", "Indian Bank", "IDIB", "INB", "*99*58#"],
["22", "Indian Overseas Bank", "IOBA", "IOB", "*99*52#"],
["23", "IndusInd Bank", "INDB", "IIB", "*99*69#"],
["24", "ING Vysya Bank", "VYSA", "ING", "NA"],
["25", "Janata Sahakari Bank", "JSBP", "JSB", "*99*81#"]
];
var getBanks = (b, t = b.shift()) => b.map(e => e[1]);
document.write("<pre>" + JSON.stringify(getBanks(bdata), null,2) + "</pre>");

您所拥有的是arraysarray,您需要循环通过主数组(忽略索引0,因为您不需要它),并且在循环内只访问第一个索引值,因为它具有银行名称

var data = [
["S. No.", "Bank Name", "First 4 Letters of ", "IFSC", "Short Code", "Multimodal Code"],
["1", "Abhyudaya Co-op Bank", "ABHY", "ACB", "*99*87#"],
["2", "Allahabad Bank", "ALLA", "ALB", "*99*54#"],
["3", "Andhra Bank", "ANDB", "ANB", "*99*59#"],
["4", "Apna Sahakari Bank", "ASBL", "APN", "*99*85#"],
["5", "Axis Bank", "UTIB", "AXB", "*99*45#"],
["6", "Bank of Baroda", "BARB", "BOB", "*99*48#"],
["7", "Bank of India", "BKID", "BOI", "*99*47#"],
["8", "Bank of Maharashtra", "MAHB", "BOM", "*99*61#"],
["9", "Bhartiya Mahila Bank", "BMBL", "BMB", "*99*86#"],
["10", "Canara Bank", "CNRB", "CNB", "*99*46#"],
["11", "Central Bank of India", "CBIN", "CBI", "*99*51#"],
["12", "Corporation Bank", "CORP", "CRB", "*99*57#"],
["13", "DCB Bank", "DCBL", "DCB", "*99*65#"],
["14", "Dena Bank", "BKDN", "DNB", "*99*78#"],
["15", "Federal Bank", "FDRL", "FBL", "*99*72#"],
["16", "Gujarat State Co-op Bank", "GSCB", "GSC", "*99*90#"],
["17", "Hasti Co-op Bank", "HCBL", "HCB", "*99*89#"],
["18", "HDFC Bank", "HDFC", "HDF", "*99*43#"],
["19", "ICICI Bank", "ICICI", "ICI", "*99*44#"],
["20", "IDBI Bank", "IBKL", "IDB", "*99*49#"],
["21", "Indian Bank", "IDIB", "INB", "*99*58#"],
["22", "Indian Overseas Bank", "IOBA", "IOB", "*99*52#"],
["23", "IndusInd Bank", "INDB", "IIB", "*99*69#"],
["24", "ING Vysya Bank", "VYSA", "ING", "NA"],
["25", "Janata Sahakari Bank", "JSBP", "JSB", "*99*81#"]
];
for(var i=1; i< data.length; i++){  //neglect 0 index
   console.log(data[i][1]);         //access the first index, as it has the bank name
}