js要掌握的数据结构和算法
-
字符串和数组API
字符串:length[长度]、toLOwercase/touppercase[大小写转换]、charAt[获取字符]、substring[截取]、replace[替换]、split[字符串分割父]、indexOf/lastindexof[检索] 数 组:length[长度]、slice[截取]、unshift/push[前/后添加]、shift/pop[前/后删除]、sort(升(a,b)=>{return:a-b},降(a,b)=>{return:b-a}),reverse[翻转],join[拼接] -
选择结构,循环结构,顺序结构
if-else、switch-case、for、do-while,while,for循环嵌套,if选择嵌套 -
常见的算法和数据结构
冒泡排序: var obj=[23,46,34,12,6] for(var i=0;i<obj.length-1;i++){ for(var j=0;i<obj.length-i-1;i++){ if(dbj[j]>obj[j+1){ var arr=obj[j+1] obj[j]=obj[j+1] obj[j+1]=arr } } } console.log(obj); 插入排序: var obj=[67,9,86,4,90] for(var i=0;i<obj.length;i++){ var arr=obj[i],j=i-1; while(obj[j]>arr){ onj[j+1]=obj[j]; j--; } obj[j+1]=arr } console.log(obj) 选择排序 var arr=[23,5,6,89,15,6] for(var i=0;i<arr.length-1;i++){ var min=i; for(var j=i+1;j<arr.length;j++){ if(arr[min]>arr[j]){ min=j; } } if(i!=min){ var temp=arr[i] arr[i]=arr[min] arr[min]=temp } } console.log(arr) 箭头函数 (参数列表)=>{ //函数体 } 普通函数 funaction 函数名(参数列表){ //函数体 } 生成器 funaction * 函数名(参数列表){ //函数体 } 注意遇到yield暂停遇到next执行 函数调用 回调函数 funaction data(a,b){ return:a+b; } call自带的回调函数,但返回是是数字 console.log(data,call(data,5,6)); console.log(data(5,6); apple自带但是回调函数,返回的是数组 var obj=[3,5]; cosole.log(data,apple(data,obj)); 自调用函数 ( funaction data(a,b){ colose.log(a+b); })(3,4)