1. 程式人生 > >javascript的簡單邏輯題目

javascript的簡單邏輯題目

ps:純屬練習邏輯,專案開發中實際用處不大,老鳥飄過。

題目1:求一個數組的最大ji數和最小偶數,並返回他們的和,如果一個數不存在則返回null。

方法1:


    function evenOdd(arr){
        var even=[],// 偶數
            odd=[];//基數
        for(var i=0;i<arr.length;i++)
        if(arr[i]%2==0){
            even.push(arr[i]);
        }else{
            odd.push(arr[i]);
        }

        if
(even.length==0||odd.length==0){ console.log('null'); return null; }else{ even.sort(function(a,b){ return a-b; }); odd.sort(function(a,b){ return a-b; }); } var maxOdd = odd[odd.length-1
]; var minEven = even[0]; console.log('最大基數:'+maxOdd); console.log('最小偶數:'+minEven); console.log('最大基數和最小偶數之和為:'+(maxOdd+minEven)); } evenOdd([])

方法2:

function maxOddMinEven(arguments){
            var odd = [],
                even = [];
            for
(var i = 0; i < arguments.length; i++){ if(parseInt(arguments[i]) == arguments[i]){ //如果是整數 if(arguments[i] % 2) { odd.push(arguments[i]); }else{ even.push(arguments[i]) } } } odd.sort(function(a,b){return a>b?1:-1} ); //升序排序 even.sort(function(a,b){return a<b?1:-1}); //降序排序 console.log(odd[0],even[0]); if(odd && even){ return odd[0] + even[0]; }else{ return null; } } console.log(maxOddMinEven([1,2,3,4,5,6,7,8,9]))

題目2:字串逆序排列

    function reverseStr(str){
        var str1=str.split('').reverse().join('');
        console.log(str1);
    }

   reverseStr('1 ab cd');

題目三:陣列中第二大的數

思路:

function secondMax(arr){
    arr.sort(function(a,b){
        return a-b;
    });

    var len=arr.length,
        last=arr[len-1];

    for(var i=len-2;i>=0;i--){
        console.log(arr[i])
        if(arr[i]!=last){
            console.log('第二大的數字為:'+arr[i]);
            return arr[i];
        }
    }
}
    secondMax([9,0,99,100])

判斷迴文:

        //判斷迴文  abccba
         function checkHw(num){
             var Xnum=num.toString();
             for(var i=0;len=Xnum.length,i<(len-1)/2;i++){
                 if(Xnum.charAt(i)==Xnum.charAt(len-1-i)){
                     return num+'是迴文';
                 }else{
                     return num+'不是迴文';
                 }
             }
         }

       console.log( checkHw('abccba'))