zoukankan      html  css  js  c++  java
  • js字符串使用占位符拼接

    由于几个老项目中经常用到jquery拼接字符串,各种引号很disgusting

    所以写了一个占位符拼接的的方法

    String.prototype.signMix= function() {
    	if(arguments.length === 0) return this;
    	var param = arguments[0], str= this;
    	if(typeof(param) === 'object') {
    		for(var key in param)
    			str = str.replace(new RegExp("\{" + key + "\}", "g"), param[key]);
    		return str;
    	} else {
    		for(var i = 0; i < arguments.length; i++)
    			str = str.replace(new RegExp("\{" + i + "\}", "g"), arguments[i]);
    		return str;
    	}
    }
    
    var str1 = "hello {0}".signMix("world"); //hello world
    
    var str2 = "{0}总冠军, {1}总冠军".signMix("湖人", "骑士"); // 湖人总冠军,骑士总冠军
    
    var user = {name: "James",sex: "male",age: 34};
    var str3 = "史上第一个30000+8000+8000球员:{name}, 性别{sex}, 今年{age}岁".signMix(user); 
    //史上第一个30000+8000+8000球员:James, 性别male, 今年34岁
    
    var optionData= {name: "flower",selected:true, spell: "abc", value:"1"};
    var optionStr='<option value="{value}" match="{spell}" selected="{selected}">{name}</option>'.signMix(optionData)
    //<option value="1" match="abc" selected="true">flower</option>
    

    ES6 反向单引号` 了解一下/微笑脸

    var obj={
      name: "laker",
      msg: "总冠军"
    }
    var message1=`NBA final, ${obj.name}, ${obj.msg}` // NBA final, laker, 总冠军
    
  • 相关阅读:
    查看dll定义的宏
    循环调用dll库的界面时,首次正常,再次无响应
    strftime使用%F格式化日期失败
    自己程序生成的二维码部分手机无法识别
    Drools规则
    idea快捷键
    风控文档笔记
    工作笔记
    工具方法
    BIO,NIO,AIO
  • 原文地址:https://www.cnblogs.com/papi/p/8629286.html
Copyright © 2011-2022 走看看