using JSON file to define array values in Node.js

In node.js my program app.js, i am defining array like this

var myList = [["SAHRUKH",47.49,"HIT"],["SALMAN",47.3,"FLOP"]];
console.log (myList)

It is giving output but i want an external JSON file to supply the parameter of myList array instead of me defining it hardcore

i have prepared a JSON file named ppm.json and change my code to

var myList = JSON.parse(fs.readFileSync('ppm.json', 'utf8'));
console.log (myList[1])

my ppm.json is this

{
"hero": "SAHRUKH",
"age": "47.49",
"lastpict": "HIT"
}

it giving me output as undefined in console. what is the problem. pls help.

Without more requirements it's hard to give a definitive answer, but one thing you can do:

app.js

var myList = require('./my_list.json');
console.log(myList);

my_list.json

[["SAHRUKH",47.49,"HIT"],["SALMAN",47.3,"FLOP"]]

You can use require() to load both JSON and JavaScript files.

For example,

myFile.json:

[["SAHRUKH",47.49,"HIT"],["SALMAN",47.3,"FLOP"]]

app.js:

var myList = require( './myFile.json' );
console.log (myList)

You're accessing your item wrong. You don't have an array you have an object.

Access your heros age like this:

myList['age']

You might also consider changing your file to look like this:

{ 
    "SAHRUKH" : {
        "age" : "47.49",
        "lastpict" : "HIT"
    }
}

In which case you'd get your hero's age like:

myList.SAHRUKH.age;
//Or Equivalently
myList['SAHRUKH']['age'];  //The dot notation above is preferred though!

Or this

{ "heros" : [
    { 
        "name" : "SAHRUKH",
        "age" : "47.49",
        "lastpict" : "HIT"
    }
]}

In which case you'd get at age like:

myList.heros[0].age;

If you adjust your ppm.json file to look like:

[{
    "hero": "SAHRUKH",
    "age": "47.49",
    "lastpict": "HIT"
}]

It should drop in and work directly. If you wanted to include multiple heroes, it would look like:

[
  {
    "hero": "SAHRUKH",
    "age": "47.49",
    "lastpict": "HIT"
  },
  {
    "hero": "SALMAN",
    "age": "47.3",
    "lastpict": "FLOP"
  }
]

Your resulting myList should be an array in the example you provided, with entry 0 being the first hero object (SAHRUKH) and 1 being the second, and so on.