常用方法雜記

本文內(nèi)容不是解決問(wèn)題,而是記錄一些常用的方法,代碼用的是TS語(yǔ)言。

第一個(gè):保留幾位小數(shù),傳入數(shù)字和精確度,傳出新數(shù)字

/**
 * @param num 原數(shù)字
 * @param precision 精確度(10^n代表保留n位小數(shù),例如,precision = 100代表保留2位小數(shù))
 */
public static NumberFix(num: number, precision: number): number {
   return Math.floor(num * precision) / precision;
}

第二個(gè):計(jì)算字符串長(zhǎng)度,輸入字符串,返回長(zhǎng)度

public static GetStringLength(text: string): number {
    let count: number = 0;
    // stringObject.split傳入空字符串 (""),則每個(gè)字符之間都會(huì)被分割
    let newStr: string[] = text.split("");
    for (let i:number = 0; i < newStr.length; i++) {
        if (newStr[i].charCodeAt(0) < 299) {
            // 普通字符
            count++;
        }else {
            // 漢字
            count += 2;
        }
    }
    return count;
}

第三個(gè):判斷此值在不在數(shù)組中,傳入值和數(shù)組,傳出判斷結(jié)果

public static IsParmInList(parm1: any, list: any[]): boolean {
    let isIn:boolean = false;
    if (!Array.isArray(parm1) && list != null && Array.isArray(list) && list.length > 0) {
        for (let i:number = 0;i < list.length; i++) {
            if (parm1 === list[i]) {
                isIn = true;
                break;
            }
        }
    }
    return isIn;
}

第四個(gè):CocosCreator數(shù)據(jù)存儲(chǔ)

public static GetLocalStorageData(key: string): string {
    return cc.sys.localStorage.getItem(key);
}
public static SetLocalStorageData(key: string, value: string): void {
    cc.sys.localStorage.setItem(key, value);
}

第五個(gè):替換文字中的占位符,替換2個(gè),傳入(字符串/占位符1/占位符2/替換字符串1/替換字符串2),傳出新字符串

public static getReplaceString2(originStr: string, placeholder1: string, placeholder2: string, replaceStr1: string, replaceStr2: string) : string{
    let str: string = originStr;
    str = str.replace(placeholder1, replaceStr1);
    str = str.replace(placeholder2, replaceStr2);
    return str;
};

第五個(gè):時(shí)間戳(秒級(jí))轉(zhuǎn)換為年月日時(shí)分秒,格式:(2020.02.02 02:02:02)

public static FormatTimeStamp(timeStamp: number): string {
    let date: Date = new Date(timeStamp * 1000);
    let year: number = date.getFullYear();
    let month: number = date.getMonth() + 1;
    let day: number = date.getDay();
    let hour: number = date.getHours();
    let minute: number = date.getMinutes();
    let second: number = date.getSeconds();
    
    let str: string = "";
    str += year + ".";
    str += (month < 10) ? ("0" + month + ".") : (month + ".");
    str += (day < 10) ? ("0" + day + "   ") : (day + "   ");
    str += (hour < 10) ? ("0" + hour + ":") : (hour + ":");
    str += (minute < 10) ? ("0" + minute + ":") : (minute + ":");
    str += (second < 10) ? ("0" + second) : second;
    return str;
};
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容