underscore的几个功能函数的操作【7】
我贴贴贴:
1 <!DOCTYPE HTML> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 5 <title>无标题文档</title> 6 <script type="text/javascript" src="underscore.js"></script> 7 <script> 8 /* 9 _.random();默认最小值是0;只需要传入一个最大值的数值,返回值是其中的一个随机数,并且包括范围数自己. 10 */ 11 12 console.log(_.random(100)); 13 14 /* 15 escape() unescape()是编码和解码的方法 16 */ 17 var string=_.escape('hello!'); 18 console.log(string); 19 console.log(_.unescape(string)); 20 21 /* 22 template()函数: 23 格式:_.template(templateString, [data], [settings]) 24 参数templateString就是模板标签,可选参数data为渲染标签的数据,可选参数settings为自定义模板标签的字符格式 25 26 27 <% %>在template()函数中使用时,在它包含处可以执行任意的JavaScript代 28 码,同时允许在调用template()函数时使用对象属性的方式传递参数值。 29 */ 30 31 var tpl=_.template('<%console.log(str)%>'); 32 tpl({str:'hello template'}); 33 34 /* 35 模板标签<%=%>:直接输出变量或者是函数的结果,功能是输出数据,而不是执行 36 */ 37 38 var tpl2=_.template('<%=string%>'); 39 40 console.log(tpl2(string='这是一首简单的小情歌 ')); 41 42 43 /* 44 模板标签<%-%>:输出变量或者是函数的结果,但会把html转义,防止恶意代码,推荐! 45 */ 46 var tpl3=_.template('<%-tring%>'); 47 console.log(tpl3(tring="html<br'>")); 48 49 50 /* 51 chain()函数:可以链式操作,逐层获取返回值0. 52 */ 53 var arr=[1,2,3,4,5,6,7]; 54 var result=_.chain(arr).filter(function(n){return n%2==0}).without(arr,2).last().value(); 55 56 /* 57 value()方法获取对象的 58 */ 59 console.log(result); 60 //console.log(typeof result); 61 </script> 62 </head> 63 64 <body> 65 </body> 66 </html>