NodeJS

JS模块化思维

下面是自己写的一个模块化的js包,如果要调用其中的函数,需要使用如下格式spectaculars.sort.pupple(list, arr[0]);
如果在其他文件使用这个pupple函数,就需要先导入该js文件,<script src="/assets/js/spectaculars.js?v=1028" type="text/javascript"></script>

var spectaculars = {
    URL : {
        detail : function(chanel, code, _panelTitle) {
            return '/wexin_info/data/' + chanel + '/' + code + '/' + _panelTitle;
        }
    },

    sort : {
        // 根据 key 做排序
        pupple : function (arr, key) {
            for(var i =0;i < arr.length - 1;i++)  
            {  
                for(var j = 0;j <  arr.length - 1 - i;j++)// j开始等于0,  
                {  
                    if(Number(arr[j][key]) - Number(arr[j+1][key]) < 0)  
                    {  
                        var temp = arr[j];  
                        arr[j] = arr[j+1];  
                        arr[j+1] = temp;  
                    }  
                }  
            } 
        },
    },

    // 格式化数字
    format : {
        number : function (number, decimals, dec_point, thousands_sep) {
             /*
             3     * 参数说明:
             4     * number:要格式化的数字
             5     * decimals:保留几位小数
             6     * dec_point:小数点符号
             7     * thousands_sep:千分位符号
             8     * */
             number = (number + '').replace(/[^0-9+-Ee.]/g, '');
             var n = !isFinite(+number) ? 0 : +number,
             prec = !isFinite(+decimals) ? 0 : Math.abs(decimals),
             sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep,
             dec = (typeof dec_point === 'undefined') ? '.' : dec_point,
             s = '',
             toFixedFix = function (n, prec) {
                 var k = Math.pow(10, prec);
                return '' + Math.ceil(n * k) / k;
             };

             s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.');
             var re = /(-?\d+)(\d{3})/;
             while (re.test(s[0])) {
                s[0] = s[0].replace(re, "$1" + sep + "$2");
             }

             if ((s[1] || '').length < prec) {
                 s[1] = s[1] || '';
                 s[1] += new Array(prec - s[1].length + 1).join('0');
             }
             return s.join(dec);
        },
    }   
}

NodeJS 模块化实践

模块化基本流程

创建模块,导出模块,引入模块,调用模块

创建模块 + 导出模块(student.js)
/*
* @Author: liujinliang
* @Date:   2018-05-24 17:09:46
* @Last Modified by:   liujinliang
* @Last Modified time: 2018-05-24 17:11:21
*/
function add(student) {
    console.log("add student:" + student);
}

exports.add = add
引入模块 + 调用模块(test.js)
/*
* @Author: liujinliang
* @Date:   2018-05-24 17:11:27
* @Last Modified by:   liujinliang
* @Last Modified time: 2018-05-24 17:12:28
*/
var student = require('./student')

student.add("liujinliang")
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值