JS 实现驼峰和下划线互转

只考虑了大小写,没考虑数字

             let str = "documentCaseGood"
        // let str = "AZ"
        let strHump = "document-case-good"
        // 转驼峰
        function toHump(str) {
            // 分隔每个单词
            let targetUrl = str.split("-");
            // 从第二个单词开始将首字母大写
            for (let i = 1; i < targetUrl.length; i++) {
                // 首字母大写
                let bigChar = targetUrl[i].substr(0, 1).toUpperCase();
                targetUrl[i] = bigChar + targetUrl[i].substr(1)
                console.log(targetUrl[i])
            }
            let ret = targetUrl.join("")
            console.log(ret)
        }
 
//  转下划线
        function toLine(str) {
            // 转数组
            let strArr = str.split("");
            console.log(strArr)
            // console.log(typeof strArr[0])
            let idxs = new Array()
            // 寻找大写开头的下标
            strArr.forEach((item, index) => {
                if (item.charCodeAt(0) >= 65 && item.charCodeAt(0) <= 90) {
                    // console.log(item, index)
                    idxs.push(index)
                }
                // console.log(item , typeof item,item.charCodeAt(0));
                // return true
            })
            // 所有大写开头的下标
            console.log(idxs)
            for(let idx of idxs) {
                let target = "-" +  strArr[idx].toLowerCase();
                strArr[idx] = target;
                console.log(strArr)
                
            }
            console.log(strArr.join(""))
            return strArr.join("")
        }
        toLine(str)

你可能感兴趣的:(前端语言,javascript,开发语言,ecmascript)