Во-первых, не уверен, чего вы здесь добиваетесь.
Функция, которую вы вызываете first (), имеет один параметр. Внутри функции вы создали другую функцию, которая ничего не будет делать, как вы ее еще не вызывали. Также индиго не определено.
function first(val){
return val
}
function second(val){
return val+22;
}
console.log(first(22));
console.log(second(55));
Вы можете вызвать это внутри функции с проверкой второго существующего параметра (в приведенном ниже примере он просто должен существовать):
function first(val, newval){
console.log(val, "value");
if(!!newval){
console.log(val+55,"value");
}
}
first(22,22);
/* outputs:
"22","value"
"77","value"
*/
Стоит почитать о JavaScript:
https://www.w3schools.com/js/js_scope.asp
Ваша функция second () является локальной для first () и не вызывается.