zoukankan      html  css  js  c++  java
  • xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!

    js & regex & var & highlight

    
    let key = `ali`.toLocaleUpperCase();
    let name = "阿里云计算有限公司";
    
    const getHighlightOthers = (name = ``, type = `prefix`) => {
        let result = ``;
        let prefix = 0;
        let suffix = 0;
        if (name && name.length) {
            if (type === `prefix`) {
                prefix = name.toLocaleUpperCase().indexOf(key);
                if(prefix > 0) {
                    result = name.substr(0, prefix);
                }
            } else {
                suffix = name.toLocaleUpperCase().lastIndexOf(key);
                if(suffix > 0) {
                   result = name.substr(key.length);
                 } else {
                        result = name;
                    }
            }
        }
        console.log(`result =`, result);
        return result;
    };
    const getHighlightKeyword = (name = ``) => {
        // null
        let result = ``;
        let prefix = 0;
        if (name && name.length) {
            prefix = name.toLocaleUpperCase().indexOf(key);
            if(prefix > 0) {
               result = name.substr(prefix, key.length);
               }
        }
        console.log(`result =`, result);
        return result;
    };
    
    getHighlightOthers(name, `prefix`);
    getHighlightKeyword(name);
    getHighlightOthers(name, `suffix`);
    
    
    
    
    

    https://jscomplete.com/playground

    bug

    still bug

    
    let key = `ali`.toLocaleUpperCase();
    let name = "阿里云计算有限公司 alibaba";
    
    const getHighlightOthers = (names = ``, type = `prefix`) => {
      let name = names;
        let result = ``;
        let prefix = 0;
        let suffix = 0;
        if (name && name.length) {
            if (type === `prefix`) {
                prefix = name.toLocaleUpperCase().indexOf(key);
                if(prefix > 0) {
                    result = name.substr(0, prefix);
                }
            } else {
                suffix = name.toLocaleUpperCase().indexOf(key);
                if(suffix > 0) {
                   // result = name.substr(key.length);
                   result = name.substr(suffix + key.length);
                 } else {
                        result = name;
                    }
            }
        }
        console.log(`result =`, result, type);
        return result;
    };
    const getHighlightKeyword = (name = ``) => {
        // null
        let result = ``;
        let prefix = 0;
        if (name && name.length) {
            prefix = name.toLocaleUpperCase().indexOf(key);
            if(prefix > 0) {
               result = name.substr(prefix, key.length);
               }
        }
        console.log(`result =`, result);
        return result;
    };
    
    getHighlightOthers(name, `prefix`);
    getHighlightKeyword(name);
    getHighlightOthers(name, `suffix`);
    
    
    
    

    zero bug

    OK

    
    let key = `ali`.toLocaleUpperCase();
    // let name = "阿里云计算有限公司 alibaba";
    let name = "AliOS"
    
    const getHighlightOthers = (names = ``, type = `prefix`) => {
      let name = names;
        let result = ``;
        let prefix = 0;
        let suffix = 0;
        if (name && name.length) {
            if (type === `prefix`) {
                prefix = name.toLocaleUpperCase().indexOf(key);
                if(prefix >= 0) {
                    result = name.substr(0, prefix);
                }
            } else {
                suffix = name.toLocaleUpperCase().indexOf(key);
                if(suffix >= 0) {
                   result = name.substr(suffix  + key.length);
                 } else {
                        result = name;
                    }
            }
        }
        console.log(`result =`, result, type);
        return result;
    };
    const getHighlightKeyword = (name = ``) => {
        // null
        let result = ``;
        let prefix = 0;
        if (name && name.length) {
            prefix = name.toLocaleUpperCase().indexOf(key);
            if(prefix >= 0) {
               result = name.substr(prefix, key.length);
               }
        }
        console.log(`result =`, result);
        return result;
    };
    
    getHighlightOthers(name, `prefix`);
    getHighlightKeyword(name);
    getHighlightOthers(name, `suffix`);
    
    
    
    


  • 相关阅读:
    MyBaits resultMap 返回值与对象不匹配处理
    Play 常见命令
    Yarn源码分析之MRAppMaster:作业运行方式Local、Uber、Non-Uber
    Yarn源码分析之事件异步分发器AsyncDispatcher
    MapReduce源码分析之Task中关于对应TaskAttempt存储Map方案的一些思考
    Yarn源码分析之MapReduce作业中任务Task调度整体流程(一)
    MapReduce源码分析之作业Job状态机解析(一)简介与正常流程浅析
    Yarn源码分析之如何确定作业运行方式Uber or Non-Uber?
    Yarn源码分析之MRAppMaster上MapReduce作业处理总流程(二)
    Yarn源码分析之MRAppMaster上MapReduce作业处理总流程(一)
  • 原文地址:https://www.cnblogs.com/xgqfrms/p/10894360.html
Copyright © 2011-2022 走看看