今天给大家分享一道较为简单的js题,下面大家先看一看题目,在这之前先不要看我写的代码,看看自己有没有更好的方法。下面我先把题分享出来:首先先把题中重点的地方列举出来:
大家先仔细想一想思路,当你写完自己的代码时,认为自己代码是否有bug的最好方法就是带几组比较有代表性的值进去,然后验证它们的正确性来修复自己的bug。
接下来我将附上我所解析之后写的代码:
123456789101112131415161718192021222324252627282930
// 注意:题干要求a数组和b数组是从小到大的数字 var a = [1,2,5,9,112]; var b = [3,4,6,8]; var c = []; var len = a.length + b.length; var index = 0; for(var i = 0,j = 0;;){ if(a[i] < b[j]){ if(a[i] !== undefined){ c[index] = a[i]; i++; }else{ c[index] = b[j]; j++; } }else{ if(b[j] !== undefined){ c[index] = b[j]; j++; }else{ c[index] = a[i]; i++; } } index++; if(index == len){ break; } } console.log(c) // [1, 2, 3, 4, 5, 6, 8, 9, 112]