zoukankan      html  css  js  c++  java
  • 常用JS小知识汇总

    1 上传图片:html代码

    <input id="image" type='file' name='myFile' size='15' onchange="showPicture(this)" />
    <img id="111" src="img/1.jpg" width="133" height="200" />

    js代码:

    <script type="text/javascript">
                function showPicture(imgFile) {
                    // alert(window.URL.createObjectURL(imgFile.files[0]));
                    /*获取上传文件的路径*/
                    document.getElementById("111").src = window.URL.createObjectURL(imgFile.files[0]);
                }
    </script>

     2 多个json数组合并为一个显示(定义一个空数组遍历各个子json,然后push进去)

     1 str1,str2,str3为3个json数组
     2 
     3 var result = new Array();
     4  
     5 for (var i = 0; i < str1.length; i++) {
     6     result .push(str1[i]);
     7 }
     8  
     9 for (var i = 0; i < str2.length; i++) {
    10     result .push(str2[i]);
    11 }
    12  
    13 for (var i = 0; i < str3.length; i++) {
    14     result .push(str3[i]);
    15 }

     3获取某个div的真实高度

    parseInt($('#ceshi').get(0).offsetHeight)

     4选择器

    $("input[name^='news']") //name是以news开始的input
    $("input[name$='letter']") //name是以letter结尾的input
    $("input[name*='man']")  //查找所有 name 包含 'man' 的 input 元素
    
    
    
     

     5数字转换成字母

    //#region "数字转换成字母(1-A,2-B....,27-AA,28-AB....53-BA,54-BB...)"
    function getCharacter(value) {
        var m = value % 26;
        var n = parseInt(value / 26);
        var preCode = ""
        if (n > 0) {
            preCode = getCharacter(n);
        }
        if (m > 0) {
            return preCode + CharCodeToString(m + 64);
        } else if (m == 0) {
            return preCode + CharCodeToString(90);
        }
    }
    
    function CharCodeToString(value) {
        return String.fromCharCode(value)
    }
    //#endregion

     6判断是否为空

    //#region "判断是否为空"
    function isNull(data) {
        return (data == "" || data == undefined || data == null) ? true : false;
    }

    7判断ie版本

    //#region "IE" 
    //判断ie版本    
    function getInternetExplorerVersion() {
        var browser = navigator.appName;
        var b_version = navigator.appVersion;
        var version = b_version.split(";");
        if (version.length > 1) {
            var trim_Version = parseInt(version[1].replace(/[ ]/g, "").replace(/MSIE/g, ""));
            return trim_Version;
        } else {
            return 0;
        }
    
    }

    8日期格式扩展

    //#region "日期格式扩展"
    // var d = new Date(value);
    // d.Format('yyyy-MM-dd')
    function dateFormat() {
        Date.prototype.Format = function (fmt) {
            var o = {
                "M+": this.getMonth() + 1,                 //月份   
                "d+": this.getDate(),                    //
                "h+": this.getHours(),                   //小时   
                "m+": this.getMinutes(),                 //
                "s+": this.getSeconds(),                 //
                "q+": Math.floor((this.getMonth() + 3) / 3), //季度   
                "S": this.getMilliseconds()             //毫秒   
            };
            if (/(y+)/.test(fmt))
                fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
            for (var k in o)
                if (new RegExp("(" + k + ")").test(fmt))
                    fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
            return fmt;
        }
    }
    //#endregion

    9禁止重复调用、只允许执行一次的once 函数

    //#region "禁止重复调用、只允许执行一次的once 函数"
    function once(fn, context) {
        var result;
        return function () {
            if (fn) {
                result = fn.apply(context || this, arguments);
                fn = null;
            }
            return result;
        };
    }
    //#endregion

    10共用的百分比格式化显示

    //共用的百分比格式化显示
    function formatPercent(value, rowData) {
        if (value) {
            if (value == "") {
                return '';
            } else if (parseFloat(value) == 0) {
                return '';
            } else {
                var s = parseFloat((value + "").replace(/[^d.-]/g, "")).toFixed(2) + "";  //格式化字符串,保留两位小数点
                return s + "%";
            }
        }
        return '';
    }

    11共用的数量格式化显示

    //共用的数量格式化显示
    function formatAmount(value, rowData) {
        if (value) {
            if (value == 0) {
                return '';
            } else {
                var oper = parseFloat(value) >= 0 ? "" : "-";
                value = Math.abs(value);
                var s = parseFloat((value + "").replace(/[^d.-]/g, "")).toFixed() + "";
                var l = value.toString().split(".")[0].split("").reverse();
                var r = value.toString().split(".")[1];
                t = "";
                for (i = 0; i < l.length; i++) {
                    t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : "");
                }
                if (r) {
                    return oper + t.split("").reverse().join("") + "." + r;
                } else {
                    return oper + t.split("").reverse().join("");
                }
            }
        } else {
            return '';
        }
    }

    12共用的金额格式化显示

    //共用的金额格式化显示
    function formatMoney(value, rowData) {
        if (value) {
            if (value == 0) {
                return '';
            } else {
                var oper = parseFloat(value) >= 0 ? "" : "-";
                value = Math.abs(value);    //取整
                with (Math) { //四舍五入
                    value = Math.round(value * pow(10, 2)) / pow(10, 2);
                    value = value.toFixed(2)
                }
                var n = 2;
                var s = parseFloat((value + "").replace(/[^d.-]/g, "")).toFixed(n) + "";
                var l = value.toString().split(".")[0].split("").reverse();
                var r = value.toString().split(".")[1];
                t = "";
                for (i = 0; i < l.length; i++) {
                    t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : "");
                }
                if (r) {
                    return oper + t.split("").reverse().join("") + "." + r;
                } else {
                    return oper + t.split("").reverse().join("") + ".00";
                }
            }
        } else {
            return '';
        }
    }




    13共用的日期格式化显示

    //共用的日期格式化显示
    function formatDate(value, rowData, rowIndex) {
        var ShowDate = "
        if (value.length > 0) {
            var d = new Date(value);
            ShowDate = d.Format("yyyy-MM-dd");
        }
        return ShowDate;
    }

     14 数据加上千分号

    function formatNumberRgx(num) {  
      var parts = num.toString().split(".");  
      parts[0] = parts[0].replace(/B(?=(d{3})+(?!d))/g, ","); //正则表达式  
      return parts.join(".");  
    };  

     15 数值转Money

    //金额格式:参数:数值,保留小数位数,货币符号,整数部分千位分隔符,小数分隔符
            function formatMoney(number, places, symbol, thousand, decimal) {
                number = number || 0;
                places = !isNaN(places = Math.abs(places)) ? places : 2;
                symbol = symbol !== undefined ? symbol : "¥";
                thousand = thousand || ",";
                decimal = decimal || ".";
                var negative = number < 0 ? "-" : "",
                i = parseInt(number = Math.abs(+number || 0).toFixed(places), 10) + "",
                j = (j = i.length) > 3 ? j % 3 : 0;
                return symbol + negative + (j ? i.substr(0, j) + thousand : "") + i.substr(j).replace(/(d{3})(?=d)/g, "$1" + thousand) + (places ? decimal + Math.abs(number - i).toFixed(places).slice(2) : "");
            }
  • 相关阅读:
    Vue生命周期
    Vue-Router
    Vue组件
    Vue基础以及指令
    ES6 常用语法
    缓存、序列化、信号
    四、全局事务的commit和rollback
    三、全局事务begin请求GlobalBeginRequest
    二、分布式事务协调者DefaultCoordinator
    一、seata-server的main启动方法
  • 原文地址:https://www.cnblogs.com/Godlovezk/p/8136907.html
Copyright © 2011-2022 走看看