Cannot set property 'size' of undefined even though module was exported

OmniOwl

I am new to NodeJS development, and I've set up Visual Studio Code to develop JavaScript for node applications.

I was following a lecture on Pluralsight, and we had just made it to the section about Objects. What the teacher did was make two scripts, dice.js and program.js and put them in the same folder. I did the same.

They look like this:

dice.js:

var die = {
    size: 6,
    totalRolls: 0,
    roll: function() {
        this.totalRolls++;
        return Math.ceil(this.size * Math.random());
    }
};

exports.game = die;

program.js

var dice = require("./dice");
var die = dice.die;

die.size = 10;

console.log(die.roll());
console.log(die.roll());
console.log(die.roll());
console.log("Total rolls " + die.totalRolls);

console.log(die);

Whenever I try and run the program.js file through Visual Studio Code however, it tells me that the property "size" is undefined. If I try and use the dot connector I get this:

enter image description here

So the size isn't there. The instructors program worked just fine, but me doing this keeps giving me the error. I've looked everywhere to try and understand what could have gone wrong. My guess is that I don't use require() correctly, or something. Coming from Strongly Typed compiled languages, this is very confusing to me.

What did I miss?

Johannes Merz

You exporting a thing called game but importing die, so naturally this wont work.

// dice.js
exports.game = die;
// program.js
var dice = require("./dice");
var die = dice.die; // <- this is wrong, change to .game:
var die = dice.game;

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

"Cannot set property of undefined", even though array has already been initialized

From Dev

Uncaught TypeError: Cannot set property 'value' of null even though it is not null

From Dev

Uncaught TypeError: Cannot set property 'value' of null even though it is not null

From Dev

cannot instantiate a class even though it is in a module

From Dev

TypeError: Cannot set property of undefined in module.exports

From Dev

Cannot read property 'module' of undefined

From Dev

Angular cannot set property of undefined

From Dev

JS: Cannot set property of undefined

From Dev

JavaScript: Cannot set property of undefined

From Dev

Cannot set property 'width' of undefined

From Dev

Cannot set property 'backgroundSize' of undefined

From Dev

'Cannot set property "innerHTML" of undefined'

From Dev

cannot set property 'exports' of undefined

From Dev

JavaScript: Cannot set property of undefined

From Dev

Cannot set property 'classRules' of undefined

From Dev

AngularJS Cannot Set Property of Undefined

From Dev

Cannot set property 'age' of undefined

From Dev

Cannot set property 'background' of undefined

From Dev

Cannot set property 'Swiper' of undefined

From Dev

Cannot set property "name" of undefined

From Dev

nodejs cannot set property '' of undefined

From Dev

Property returns undefined even though the value exists...?

From Dev

Gulp require "Cannot Find Module" even though it exists

From Dev

Cannot remove iwlwifi module, even though interface is down

From Dev

Gulp require "Cannot Find Module" even though it exists

From Dev

Local Storage Undefined even though it set. Ionic

From Dev

How to fix node-abac module "Cannot set property '_validator' of undefined"

From Dev

SSIS - 'Cannot insert the value null' even though Identity Column is set

From Dev

Uncaught Type Error: Cannot set property of undefined

Related Related

  1. 1

    "Cannot set property of undefined", even though array has already been initialized

  2. 2

    Uncaught TypeError: Cannot set property 'value' of null even though it is not null

  3. 3

    Uncaught TypeError: Cannot set property 'value' of null even though it is not null

  4. 4

    cannot instantiate a class even though it is in a module

  5. 5

    TypeError: Cannot set property of undefined in module.exports

  6. 6

    Cannot read property 'module' of undefined

  7. 7

    Angular cannot set property of undefined

  8. 8

    JS: Cannot set property of undefined

  9. 9

    JavaScript: Cannot set property of undefined

  10. 10

    Cannot set property 'width' of undefined

  11. 11

    Cannot set property 'backgroundSize' of undefined

  12. 12

    'Cannot set property "innerHTML" of undefined'

  13. 13

    cannot set property 'exports' of undefined

  14. 14

    JavaScript: Cannot set property of undefined

  15. 15

    Cannot set property 'classRules' of undefined

  16. 16

    AngularJS Cannot Set Property of Undefined

  17. 17

    Cannot set property 'age' of undefined

  18. 18

    Cannot set property 'background' of undefined

  19. 19

    Cannot set property 'Swiper' of undefined

  20. 20

    Cannot set property "name" of undefined

  21. 21

    nodejs cannot set property '' of undefined

  22. 22

    Property returns undefined even though the value exists...?

  23. 23

    Gulp require "Cannot Find Module" even though it exists

  24. 24

    Cannot remove iwlwifi module, even though interface is down

  25. 25

    Gulp require "Cannot Find Module" even though it exists

  26. 26

    Local Storage Undefined even though it set. Ionic

  27. 27

    How to fix node-abac module "Cannot set property '_validator' of undefined"

  28. 28

    SSIS - 'Cannot insert the value null' even though Identity Column is set

  29. 29

    Uncaught Type Error: Cannot set property of undefined

HotTag

Archive