• commonJS — 字符串操作(for String)


    for String

    github: https://github.com/laixiangran/commonJS/blob/master/src/forString.js

    代码

    /**
     * Created by laixiangran on 2016/1/24
     * homepage:http://www.cnblogs.com/laixiangran/
     * for String
     */
    
    (function(undefined) {
    
        var com = window.COM = window.COM || {};
    
        com.$S = {
            // 将字符串中"-"后的小写字符进行大写,如:camelize("background-color") 输出为"backgroundColor"
            camelize: function(str) {
                return str.replace(/-([a-z])/ig, function(all, letter) {
                    return letter.toUpperCase();
                });
            },
    
            // 去掉字符串首尾空格
            trim: function(str) {
                return str.replace(/^s+|s+$/g, "");
            },
    
            // RGB转十六进制
            rgbToHex: function(str) {
                // 十六进制颜色值的正则表达式
                var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
                if (/^(rgb|RGB)/.test(str)) {
                    var aColor = str.replace(/(?:(|)|rgb|RGB)*/g,"").split(",");
                    var strHex = "#";
                    for (var i= 0, len = aColor.length; i < len; i++) {
                        var hex = Number(aColor[i]).toString(16);
                        if (hex === "0") {
                            hex += hex;
                        }
                        strHex += hex;
                    }
                    if (strHex.length !== 7) {
                        strHex = str;
                    }
                    return strHex;
                } else if (reg.test(str)) {
                    var aNum = str.replace(/#/,"").split("");
                    if (aNum.length === 6) {
                        return str;
                    } else if (aNum.length === 3) {
                        var numHex = "#";
                        for (var j= 0, l = aNum.length; j < l; j++) {
                            numHex += (aNum[j] + aNum[j]);
                        }
                        return numHex;
                    }
                } else {
                    return str;
                }
            },
    
            // 十六进制转RGB
            hexToRgb: function(str) {
                // 十六进制颜色值的正则表达式
                var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
                var sColor = str.toLowerCase();
                if (sColor && reg.test(sColor)) {
                    if (sColor.length === 4) {
                        var sColorNew = "#";
                        for (var i = 1; i < 4; i++) {
                            sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1));
                        }
                        sColor = sColorNew;
                    }
    
                    // 处理六位的颜色值
                    var sColorChange = [];
                    for (var j = 1; j < 7; j += 2) {
                        sColorChange.push(parseInt("0x" + sColor.slice(j, j + 2)));
                    }
                    return "RGB(" + sColorChange.join(",") + ")";
                } else {
                    return sColor;
                }
            }
        };
    }());
    

    参考

    http://www.cnblogs.com/cloudgamer/

  • 相关阅读:
    【PHP】php重写session的存储机制
    【Javascript】原生js 全特效微博发布面板效果实现
    【Javascript】原生js百叶窗效果的实现及原理介绍
    【jQuery】jquery全屏滚动插件【fullPage.js】API 使用方法总结
    从百度音乐和酷狗音乐的分类想到的
    jQuer __Ajax DOM
    面向对象闭包 继承
    Git
    设计模式
    html5标签大全
  • 原文地址:https://www.cnblogs.com/laixiangran/p/5174828.html
Copyright © 2020-2023  润新知