javascript該寫法爲了知足多條件下的 CommonJs,Node.js, window,layui

// 該寫法爲了知足多條件下醫用的 CommonJs,Node.js, window,layui

(function (name, factory) {
    // 檢測上下文是否爲AMD或者CMD
    var hasDefine = typeof define === "function",
        // 檢查上下文環境是否爲Node
        hasExports = typeof module !== 'undefined' && module.exports,
        hasLayui = this.layui && layui.define;

    if (hasDefine) {
        // AMD 環境或者 CMD環境
        define(factory);
    } else if (hasExports) {
        // 定義爲普通的Node模塊
        module.exports = factory();
    } else if (hasLayui) {
        // 是否爲layui模塊
        layui.define(['jquery'], function (exports) {
            exports('com', factory());
        });
    } else {
        // 只想window對象
        this[name] = factory();
    }
}

)('com', function () {
    "use strict";

    var Com = function Com(params) {

    };

    Com.prototype.info = function () {
        const info = {
            version: 'v-1.0.1',
            description: 'Com只是一個測試兼容多種規範的樣例!',
            author: 'Mc.Sumi',
            date: '2018-11-01 15:00:00'
        }
        console.log(`當前Com的詳細介紹:\n ${info} `);
        return info;
    }


    return new Com(); // 返回構造

});
複製代碼
相關文章
相關標籤/搜索