zoukankan      html  css  js  c++  java
  • 编程题

    判断输出代码
    var F = function () {
        Object.prototype.a = function () {
            console.log('a');
        }
        Object.prototype.b = function () {
              console.log('b')
        }
    }
    var f = new F();
    F.a();  //返回:a
    F.b();  //返回:b
    f.a();  //返回:a
    f.b();  //返回:b
    ========================================================================
    将数组data整理成前端易解析的格式
    //原始数据
     var data = [
            {city: '安庆市', code: '0', provice: '安徽省'},
            {city: '南京市', code: '4', provice: '江苏省'},
            {city: '安庆市', code: '0', provice: '安徽省'},
            {city: '无锡市', code: '5', provice: '江苏省'},
            {city: '郑州市', code: '5', provice: '河南省'},
            {city: '焦作市', code: '5', provice: '河南省'},
            {city: '商丘市', code: '5', provice: '河南省'},
        ];
    //新数据
        var newData = [
            {
                provice: "安徽省",
                citys: [
                    {city: '安庆市', code: '0'},
                    {city: '安庆市', code: '0'}
                ]
            },
            {
                provice: "河南省",
                citys: [
                    {city: '郑州市', code: '0'},
                    {city: '焦作市', code: '0'},
                    {city: '商丘市', code: '0'}
                ]
            },
        ]
    
    
     //方法一:
        var newData = [];
        $.each(data, function (index, item) {
            var isExist=false;
            if (newData.length > 0) {
                $.each(newData, function (newIndex, newItem) {
                    if (item.provice==newItem.provice) {
                        newData[newIndex].city.push({'city': item.city, 'code': item.code});
                        isExist=true;
                        return false;
                    }
                });
                if(!isExist){
                    var perObject = {};
                    perObject['provice'] = item.provice;
                    perObject['city'] = [{'city': item.city, 'code': item.code}];
                    newData.push(perObject);
                }
            } else {
                var perObject = {};
                perObject['provice'] = item.provice;
                perObject['city'] = [{'city': item.city, 'code': item.code}];
                newData.push(perObject);
            }
        });
        console.log(newData);
     //方法二:
        var cityMap=data.reduce((acc,cur)=>{
            if(acc[cur.provice]){
                acc[cur.provice].push(cur)
            }else{
                acc[cur.provice]=[cur];
            }
            return acc
        },{})
    
        var data1=Object.keys(cityMap).reduce((acc,cur)=>{
            let obj={}
            obj.pro=cur;
            obj.citys=cityMap[cur];
            acc.push(obj);
            return acc;
        },[]);
        console.log(data1);
    ========================================================================
    使用JS递归算法计算数字的阶乘:0和1的阶乘还是1
    5!=5*4*3*2*1
      function factorial(n) {
            if (n == 0) {
                return 1;
            } else if (n == 1) {
                return 1;
            } else {
                return n * factorial(n - 1);
            }
        }
    =============================================================================
    ==============================================================================
    ===============================================================================
    ==========================================================================
    ==============================================================================
    =============================================================================
    ===============================================================================
    =================================================================================
    ===================================================================================
    ==================================================================================
    ===================================================================================







  • 相关阅读:
    构建之法阅读笔记01
    最长英语单词链
    第十五周学习总结
    寻找“水王”
    Happy Necklace HDU
    Bi-shoe and Phi-shoe LightOJ
    The Embarrassed Cryptographer POJ
    Big Number HDU
    矩阵乘法模板C/C++
    Baby Step,Giant Step算法模板
  • 原文地址:https://www.cnblogs.com/songxia/p/10270430.html
Copyright © 2011-2022 走看看