\lstdefinelanguage{lJavascript}{ number suffixes={eEn}, morekeywords=[1]{abstract,arguments,break,case,const,continue,debugger,default,delete,do,else,final,finally,for,function,goto,if,implements,in,instanceof,interface,let,native,new,package,private,protected,public,return,static,switch,synchronized,this,throw,throws,transient,typeof,var,void,volatile,while,with,yield,class,enum,export,extends,import,super,async,await,try,catch }, morekeywords=[2]{false,null,true,number,char,double,byte,int,short,long,float,undefined,Array,Boolean,Date,Math,Number,String,Object,Promise}, morekeywords=[3]{eval,parseInt,parseFloat,escape,unescape,require}, morekeywords=[4]{setTimeout,setImmediate,console,then,resolve,reject}, sensitive, alsoletter={\$_}, morestring=[b]`, morecomment=[s]{/*}{*/}, morecomment=[l]//, morestring=[b]', morestring=[b]" } \RegisterLanguage{javascript}{lJavascript}