Feedback on my roman number conversion

Hello guys i just created roman number algorithm and please do check my algorithm and review it.
Your reviews will be helpful to me to get improve.
Thank you…

function convertToRoman(num) {
 var sid = [],def=[1,5,10,50,100,500,1000];
 var roman = {
     1:'I',
     5:'V',
     10:'X',
     50:'L',
     100:'C',
     500:'D',
     1000:'M'
 };
 var count = num.toString().length;
 var div,sen,temp,elm;
 // loop it based on the length of num..
 while(num>0){
     div = Math.pow(10,count-1);
     sen = Math.floor(num/div)*div;
     num = num%div;
     --count;
     temp = getPos(sen,def,div);
     console.log(sen+'  '+temp);
     // special case
     if(temp-sen===div){
         sid.push(roman[div]);
         sid.push(roman[temp]);
     }
     else{
         while(sen>=temp){
            elm = roman[temp] || roman[div];
            sid.push(elm);
            temp+=div;
        }
     }
     def.splice(def.indexOf(sen),1);
 }
 console.log(sid.join(''));
 return sid.join('');
}
function getPos(sen,def,div){
    def.push(sen); //pushed the number 
    def.sort((a,b)=> a-b);
    console.log(def);
    if(Math.abs(sen-def[def.indexOf(sen)+1])<=div)
         // we have the return that number;
         return def[def.indexOf(sen)+1];
    else
         // we have to send the previous number;
         return def[def.indexOf(sen)-1];
}
convertToRoman(99);