JavaScript Solution
\nvar splitListToParts = function(root, k) {\n    const res = new Array(k).fill(null); // will contain split linked list \n    let n = 0; // total # of nodes in
```\nvar splitListToParts = function(root, k) {\n    const res = new Array(k).fill(null); // will contain split linked list \n    let n = 0; // total # of nodes in the link list\n    \n    let curr = root;\n    \n    // count the # of nodes\n    while (curr != null) {\n        n++;\n        curr = curr.next;\n    }\n    \n    const width = Math.floor(n / k); // initial width of each linked list parts\n    let rem = n % k; // remaining nodes\n    \n    let head = root;\n    let tail = root;\n    \n    for (let i = 0; head != null; i++) {\n        let m = width;\n        \n        if (rem > 0) {\n            m += 1;\n            rem--;\n        }\n        \n        let tail = head;\n        \n        for (let j = 1; j < m; j++) {\n            tail = tail.next;\n        }\n        \n        const next = tail.next;\n        tail.next = null;\n        res[i] = head;\n        head = next;\n    }\n    \n    return res;\n};\n```
['JavaScript']