我正在创建一个fiori应用,以从excel和代码片段中获取数据,我发现它们正在使用以下表达式。但这是可行的,但我想知道该表达式的每个部分实际上执行的操作。表达式是:
reader.onload = function (e) {
var strCSV = e.target.result;
var arrCSV = strCSV.match(/[\w .]+(?=,?)/g);
var noOfCols = 5;
var hdrRow = arrCSV.splice(0, noOfCols);
处理程序功能上的参数e
通常是事件。它包含有关刚刚发生的“操作”的信息。
示例代码的作用是,从事件目标中获取result
字符串,使用正则表达式,
将字符串按/[\w .]+(?=,?)/g
拆分,并为您提供该数组中的前5个元素。
所以会是这样:
// assume strCSV = '0,1,2,3,4,5,6'
var arrCSV = strCSV.match(/[\w .]+(?=,?)/g); // [0, 1, 2, 3, 5, 6]
var noOfCols = 5;
var hdrRow = arrCSV.splice(0, noOfCols);
// hdrRow == [0, 1, 2, 3, 4]
// arrCSV == [5, 6]
您可以在此处阅读有关拼接和正则表达式的更多信息: