有名函数调用遇到的问题

var num=1;
function join(a){
    if(a<10){
        a="0"+a;
    }
    console.log(a)//01
}
join(num);
console.log(num);//1

为什么是调用函数后 num是1

num与join方法体内的a不是一个对象,且在执行join时没有对num赋值

调用函数后num的值又没改变,跟num有什么关系呢?a不是num,num只是做个值传进去做相对应的操作,把if条件里的a改成num,满足条件num就会变成01啦