//较Low,看到的大神 帮补充

1.给定一个数组:,定义一个函数获取数组中所有的奇数,返回一个新数组;
var arr1=[1,3,4,5,6,7,8,3,4,2,3,6];
    function odd(arr){
        var newArr=[]
        for(var i =0; i<arr.length;i++){
            if(arr[i]%2!=0){
                newArr.push(arr[i])
            }
        }
        return newArr;
    }
    console.log(odd(arr1));

//2.给定一个数组:定义一个函数用于获取数组中重复出现次数最多的数; 有一个bug当两个出现次数一样多悲催了

有一个bug当两个出现次数一样多悲催了

var arr2=[1,3,4,5,6,7,8,3,4,2,3,6];

function maxLen(arr2){
        var maxLen =0,maxKey; //maxKey最多的哪项 ,最多次数初始值0(保证全遍历);
        for(var j = 0;j<arr2.length;j++){
            var len=0;  //计数  每次循环初始化len值为0;
            for(var k=0;k<arr2.length;k++){
                if(arr2[k]===arr2[j]){
                    len++; //每项出现多少次
                }
            }
            if(maxLen<len){
                maxLen=len;
                maxKey=arr2[j];
            };
        }
        console.log("最多次数的是:"+maxLen+" ,出现了"+maxLen+"次")
    }
    
    maxLen(arr2);

3.给定一个数组:按照字段age由大到小进行排序;

var arr3 = [{age:2,id:0},{age:12,id:9},{age:14,id:8},{age:22,id:6}];

objectOrder(arr3,"age");  //调用函数

function objectOrder(arr,pro){  //对象中 按pro大小排序
    for(var i = 0;i<arr.length;i++){
        for(var j =i+1;j<arr.length;j++){
            var temp;
            if(typeof(arr[i][pro]) == "undefined"){
                alert("格式不符合要求");
                return;
            }
            if(arr[i][pro] < arr3[j][pro]){  //把小的放后面
                temp = arr[j];
                arr[j] = arr[i];
                arr[i] = temp;
            }
        }
    }
    console.log(arr); //输出排过序的arr
}

4.给你一串数字,转换成货币格式,小数点后保留两位,货币前缀由入参决定

问题:变过之后钱缩水了  ······"

"$" + num +".00" 这样才是对等的

var num = "1234567"; //012,345.670
var arr = num.split(""); //Array [ "1", "2", "3", "4", "5", "6", "7" ]
function $currency(num,$){
    $ = $ || "¥";
    var num = num+"";
    var arr = num.split("");
    var len = arr.length;
    switch(len%3){  //加工数据格式
        case 0 :      //001.234.56
        arr.unshift("0","0");
        break;
        case 1 :     //012.345.67
        arr.unshift("0");
        break;
        default :    //两个余数
        arr
        break;
    }
    console.log(arr);

var l = Math.floor(arr.length/3);
    var s="";
    for(var k=0;k<l;k++){
        if(k<l-1){
            s+=parseInt(arr.splice(0,3).join(""))+","

}else{
            s+=parseInt(arr.splice(0,3).join("")) + "."
        }
    }

console.log($+s+arr.join(""));
}
$currency(num,"¥");   //¥12,345.67

js算法题的更多相关文章

  1. js 中的算法题,那些经常看到的

    js中遇到的算法题不是很多,可以说基本遇不到.但面试的时候,尤其是一些大公司,总是会出这样那样的算法题,考察一个程序员的逻辑思维能力.如下: 1.回文. 回文是指把相同的词汇或句子,在下文中调换位置或 ...

  2. 19道常见的JS面试算法题

    最近秋招也做了多多少少的面试题,发现除了基础知识外,算法还是挺重要的.特意整理了一些常见的算法题,添加了自己的理解并实现. 除此之外,建议大家还可以刷刷<剑指offer>.此外,左神在牛客 ...

  3. leetcode算法题(JavaScript实现)

    题外话 刷了一段时间的codewars的JavaScript题目之后,它给我最大的感受就是,会帮助你迅速的提升你希望练习的语言的API的熟悉程度,Array对象.String对象等原生方法,构造函数. ...

  4. leetcode算法题01

    最近求职需要重新刷算法题,从今天开始每天至少做一个leatcode的题 如果有更好的算法或者换了语言也会更新 题目: 给定一个整数数组和一个目标值,找出数组中和为目标值的两个数. 你可以假设每个输入只 ...

  5. 前端如何应对笔试算法题?(用node编程)

    用nodeJs写算法题 咱们前端使用算法的地方不多,但是为了校招笔试,不得不针对算法题去练习呀! 好不容易下定决心 攻克算法题.发现js并不能像c语言一样自建输入输出流.只能回去学习c语言了吗?其实不 ...

  6. FCC上的javascript算法题之中级篇

    FCC中的javascript中级算法题解答 中级算法的题目中用到了很多js的知识点,比如迭代,闭包,以及对json数据的使用等等,现在将自己中级算法的解答思路整理出来供大家参考讨论.欢迎大家提出新的 ...

  7. JS-常考算法题解析

    常考算法题解析 这一章节依托于上一章节的内容,毕竟了解了数据结构我们才能写出更好的算法. 对于大部分公司的面试来说,排序的内容已经足以应付了,由此为了更好的符合大众需求,排序的内容是最多的.当然如果你 ...

  8. 一道java算法题分析

    最近在面试中遇到这样的一道算法题:       求100!的结果的各位数之和为多少?       如:5!=5*4*3*2*1=120,那么他们的和为1+2+0=3这道题不算难,不过倒是注意的细节也有 ...

  9. FCC上的初级算法题

    核心提示:FCC的算法题一共16道.跟之前简单到令人发指的基础题目相比,难度是上了一个台阶.主要涉及初步的字符串,数组等运算.仍然属于基础的基础,官方网站给出的建议完成时间为50小时,超出了之前所有非 ...

随机推荐

  1. 关于Mach-O类型文件那点事

    Mach-O文件简介   Mach-O是一种文件格式,是Mach Object文件格式的缩写. 它通常应用于可执行文件,目标代码,动态库,内核转储等中.   Mach-O作为大部分基于Mach核心的操 ...

  2. Ubuntu16安装NVIDIA驱动后重复登录 简单粗暴

    第一步 卸载所有NVIDIA的东西 第二步 开机,应该能进入默认驱动的桌面了,在设置里关闭开机密码,开机自动登录 第三步 安装英伟达驱动

  3. szTom's Code Style

    介绍szTom在C++中使用的代码风格. 头文件 必须使用using namespace std; 如果是C头文件,必须使用c前缀文件名. #include <cstdio> 而不是 #i ...

  4. Spring Boot2 系列教程 (十八) | 整合 MongoDB

    微信公众号:一个优秀的废人.如有问题,请后台留言,反正我也不会听. 前言 如题,今天介绍下 SpringBoot 是如何整合 MongoDB 的. MongoDB 简介 MongoDB 是由 C++ ...

  5. 洛谷 UVA11021 Tribles

    UVA11021 Tribles 题意翻译 题目大意 一开始有kk种生物,这种生物只能活1天,死的时候有p_ipi​的概率产生ii只这种生物(也只能活一天),询问m天内所有生物都死的概率(包括m天前死 ...

  6. Your Ride Is Here 你的飞碟在这儿 USACO 模拟

    1001: 1.1.1 Your Ride Is Here 你的飞碟在这儿 时间限制: 1 Sec  内存限制: 128 MB提交: 9  解决: 9[提交] [状态] [讨论版] [命题人:外部导入 ...

  7. Quartz定时任务整理

    一. 介绍 Quartz是一个开源的定时任务调度框架,这里就不详细介绍了,我们直入主题Quartz主要由三部分组成 任务:JobDetail 触发器:Trigger,(分两类:SimpleTrigge ...

  8. DP-直线分割递推

    在 DP  里有一类是直线分割平面的问题 , 也是属于递推 类的 . 一 . 直线分割平面的问题 先考虑第一个小问题 : n 条直线最多可以将平面分割成几部分 ? 想想 最优的分割方法是怎样的呢 ? ...

  9. 8.Java的特性和优势

    简单性:可以说Java是C++语法的纯净版,没有头文件,没有指针运算,也不用分配内存. 面向对象:是一种程序设计技术,它将重点放在对象以及对象的接口上,模拟人的思维写程序,所以人去学习非常快.因此,J ...

  10. @ControllerAdvice自定义异常统一处理

    正常来说一个系统肯定有很多业务异常.而这些业务异常的信息如何返回给前台呈现给用户.比如用户的某些操作不被允许,需要给用户提示. Spring 提供了@ControllerAdvice这个注解,这个注解 ...