Add Two Numbers LeetCode solution in JavaScript
1/**2* Definition for singly-linked list.3* function ListNode(val) {4* this.val = val;5* this.next = null;6* }7*/8/**9* @param {ListNode} l110* @param {ListNode} l211* @return {ListNode}12*/13var addTwoNumbers = function (l1, l2) {14var List = new ListNode(0);15var head = List;16var sum = 0;17var carry = 0;1819while (l1 !== null || l2 !== null || sum > 0) {20if (l1 !== null) {21sum = sum + l1.val;22l1 = l1.next;23}24if (l2 !== null) {25sum = sum + l2.val;26l2 = l2.next;27}28if (sum >= 10) {29carry = 1;30sum = sum - 10;31}3233head.next = new ListNode(sum);34head = head.next;3536sum = carry;37carry = 0;38}3940return List.next;41};