Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将对象推送到数组后,NodeJS数组筛选器未获取Includes属性_Javascript_Arrays_Node.js_Express_Exceljs - Fatal编程技术网

Javascript 将对象推送到数组后,NodeJS数组筛选器未获取Includes属性

Javascript 将对象推送到数组后,NodeJS数组筛选器未获取Includes属性,javascript,arrays,node.js,express,exceljs,Javascript,Arrays,Node.js,Express,Exceljs,我正在尝试创建从Excel读取数据的RESTAPI服务。但是我不能使用保存excel数据的数组过滤器的include或indexOf属性。它显示类型错误:无法读取null的属性“includes”。我尝试过使用promise,但没有成功。请帮帮我 var express = require('express'); var http = require('http'); var app = express(); function DeliveryData(Carrier, REF, PRO, E

我正在尝试创建从Excel读取数据的RESTAPI服务。但是我不能使用保存excel数据的数组过滤器的includeindexOf属性。它显示类型错误:无法读取null的属性“includes”。我尝试过使用promise,但没有成功。请帮帮我

var express = require('express');
var http = require('http');
var app = express();

function DeliveryData(Carrier, REF, PRO, ETA, DEL, NAME) {
    this.Carrier = Carrier;
    this.REF = REF;
    this.PRO = PRO;
    this.ETA = ETA;
    this.DEL = DEL;
    this.NAME = NAME;
};

var Excel = require('exceljs');
var workbook = new Excel.Workbook();
var DeliveryRowData = [];

workbook.xlsx.readFile('DeliveryData.xlsx').then(function () {
    var worksheet = workbook.getWorksheet('DeliveryData');
    worksheet.eachRow({
        includeEmpty: false
    }, function (row, rowNumber) {
        DeliveryRowData.push(new DeliveryData(
            worksheet.getRow(rowNumber).getCell(1).value,
            worksheet.getRow(rowNumber).getCell(2).value,
            worksheet.getRow(rowNumber).getCell(3).value,
            worksheet.getRow(rowNumber).getCell(4).value,
            worksheet.getRow(rowNumber).getCell(5).value,
            worksheet.getRow(rowNumber).getCell(6).value
        ));
    });
});

app.get('/dlv/:id', (req, res) => {
    var aaa = [];
    var output = '';
    console.log(req.params.id);
    var results = JSON.parse(req.params.id);
    results.forEach(element => {
       output = DeliveryRowData.filter(item => item.REF.includes(element));
        aaa.push(output);
        console.log(output);
        console.log(element);
    });
    res.json(aaa);
});

var server = http.createServer(app);
var port = process.env.PORT || 989;
server.listen(port);

如果您执行
console.log(item)
-是否存在
REF
属性-错误告诉您
item.REF
null
是否确定
工作表.getRow(rowNumber).getCell(2).value
返回一个数组?@tymeJV它刚刚显示[object object]@savchenkoto我正在“var DeliveryRowData=[];”中推送数据这array@MamunurRahman-我们需要查看
DeliveryRowData
的数据结构-否则我们只是猜测。