简体   繁体   English

无法读取未定义的属性“ 0”

[英]Cannot read property '0' of undefined

I'm getting a weird undefined error when I'm triying to use pkgcloud and also the property length is undefined : 尝试使用pkgcloud时出现奇怪的未定义错误,并且属性length未定义:

var pkgcloud = require('pkgcloud');
var Q = require('q');
router.get('/', function(req, res, next) {

var conn = pkgcloud.compute.createClient({
    provider: 'openstack', // required
    username: 'demo', // required
    password: 'azerty', // required
    authUrl: 'http://192.168.0.242:5000' ,
    region_name :'RegionOne'// required
});
console.log(conn);

At this stage I can visualize the different methods of the object conn , but the error is generated within the for loop: 在这一阶段,我可以可视化对象conn的不同方法,但是该错误是在for循环内生成的:

var d = Q.defer();
conn.getImages(function(err, images) {

    for (var i=0; i<images.length; i++) {
        console.log("id: " + images[i].id);
        console.log("name: " + images[i].name);
        console.log("created: " + images[i].created);
        console.log("updated: " + images[i].updated);
        console.log("status: " + images[i].status + "\n");
    }
    if (err) {
        console.log("erreur");
        d.reject(err);
    } else {
        console.log("juste");
        d.resolve();
    }
});
  res.render('index', { title: 'Express' });
});

If you are receiving array of objects please consider using console.table(); 如果要接收对象数组,请考虑使用console.table(); - that will save your time. -这样可以节省您的时间。 As everyone said do the error check first then if no error print output. 就像大家所说的那样,先检查错误,然后再检查是否没有错误输出。 I don't know if SO will render table in snippet so please check your browser's console for table output. 我不知道SO是否会在摘要中呈现表格,因此请检查浏览器的console以获取表格输出。

 const img = [{ id: 1, name: "cat", created: '21-07-99', updated: '21-07-99', status: "new" }, { id: 2, name: "dog", created: '26-07-00', updated: '26-07-00', status: "new" }, { id: 3, name: "rabbit", created: '16-02-10', updated: '26-04-10', status: "modified" }]; con = (err, image) => { if (err) { console.log("ERROR", err); return; } console.table(image); }; con("404 not found",img); //error 404 will print err con(null, img); //no error so img 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM