Utils.js 4.95 KB
//工具

//导出变量给PersoanlListView使用
// module.exports.foo = function (strResponse) {    //require 实际上获取的是目标脚本内的 module.exports 变量
//注意:一旦使用exports导出则static内函数全部获取不到
//     var utils = new Utils();
//     utils.setTest(strResponse);
// };

cc.Class({
    extends: cc.Component,

    properties: {

    },

    onLoad: function () {
        // this._aCategoryMediaId.join(",");    //将数组转化为','相隔的字符串
        // if (typeof (oResult[i].images) != 'undefined' && oResult[i].images.map.normal != null) {//typeOf获取一个变量是否存在,即使oResult[i].images不存在(未声明)也不会出错
        //     var index = oResult[i].images.map.normal[0];
        //     fileURL = oResult[i].images.list[index].fileUrl;
        // }
        // cc.log("时间测试:" + this.formatDate(1522031521000));
        // this._graphicsLine = cc.find('ScrollContent/GraphicsLine', this.node).getComponent(cc.Graphics);
        // this._graphicsLine.roundRect(borderX, borderY, oResult[i].width, oResult[i].height, 20);//圆角矩形路径
        // this._graphicsLine.stroke(); //绘制路径
        // if (oJSONResult.resultSet[0].score) {
        //     cc.find("LeftGroup/Score", this.node).getComponent(cc.Label).string = parseInt(oJSONResult.resultSet[0].score * 10) / 10 + "分";
        // }

        //Label下一帧才刷新大小
        //目前用户可以自行在设置 label 所有属性后在执行一次 label._updateRenderData(true); 就能带当帧获取大小
    },

    statics: {
        /**
         * 移除元素
        */
        indexOfArr: function (arr, val) {
            for (var i = 0; i < arr.length; i++) {
                if (arr[i] == val) { return i; }
            }
            return -1;
        },

        remove: function (arr, val) {
            var index = this.indexOfArr(arr, val);
            // cc.log("index:"+index);
            if (index > -1) { arr.splice(index, 1); }
        },

        /**
         * 将时间字符串转成年月日
         * @param {*} date 
         */
        formatDate: function (date) {
            date = new Date(date);
            var y = date.getFullYear();
            var m = date.getMonth() + 1;
            var d = date.getDate();
            var h = date.getHours();
            var m1 = date.getMinutes();
            var s = date.getSeconds();
            m = m < 10 ? ("0" + m) : m;
            d = d < 10 ? ("0" + d) : d;
            // return y+"-"+m+"-"+d+" "+h+":"+m1+":"+s;
            return y + "-" + m + "-" + d;
        },

        // 提取url中的解析字符串
        //使用  var params = UrlParamHash(url);
        //     var fr= params['fr'];    //fr = iks
        UrlParamHash: function (url) {
            if(typeof(url)=='undefined') return;
            var params = [], h;
            var hash = url.slice(url.indexOf("?") + 1).split(/[&,']/); //以'或&分割,将变量放在数组里面,形如[fr=iks,word=slice,ie=gbk]
            for (var i = 0; i < hash.length; i++) {
                h = hash[i].split("=");                             //形如[fr,iks]
                params[h[0]] = h[1];
            }
            return params;
        },

        //秒数转分钟 200.617083--03:21
        formatSecond2Minute: function (second) {
            var mm = Math.floor(second / 60);
            if (mm < 10) mm = "0" + mm;
            var ss = (second % 60).toFixed(0);
            if (ss < 10) ss = "0" + ss;
            return mm + ":" + ss;
        },

        //加载资源并且设置资源可以自动释放
        loadRes: function (url, type, completeCallback) {
            return cc.loader.loadRes(url, type, function (err, res) {
                if (completeCallback) {
                    completeCallback(err, res);
                }
                if (!err) {
                    cc.loader.setAutoReleaseRecursively(res, true);
                }

            });
        },

        //判断是不是移动端
        isMobile:function(){
            if(/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) { //Web端不支持JSB
                return true;
            } else {
                return false;
            }
        },

        //筛选得到图片
        getImageByTag: function (oData, strTag, index) {
            var val = oData.images;
            strTag = strTag || "normal";
            index = index || 0;
            var strUrl = null;
            if (val && val != '' && val != 'null') {
                if (val.list && val.list instanceof Array && val.list.length > 0
                    && val.map[strTag] && val.map[strTag] instanceof Array && val.map[strTag].length > 0
                ) {
                    if (val.list[val.map[strTag][index]].fileUrl) {
                        strUrl = Common.TOPDRAW_IMAGE_SERVER + val.list[val.map[strTag][index]].fileUrl;
                    }
                }
            }
            return strUrl;
        },
    
    },

});