javascript 字符串的乘法
在ruby中我们可以通过"*"操作符去字符串进行倍增,如"ruby"*2则返回"rubyruby"。在javascript中,字符串只能用加号,嘛,乘法也加法演变过来的。我们可以搞一个试试。
方法一
String.prototype.times = function(n) {//IE6 530-640 FF3 400~550 IE8 840 ~1110 chrome 600~1000
return (new Array(n+1)).join(this);
};
<!doctype html>
<html dir="ltr" lang="zh-CN">
<head>
<meta charset="utf-8"/>
<title>字符串的乘法</title>
<script type="text/javascript" charset="utf-8">
window.onload = function(){
String.prototype.times = function(n) {
return (new Array(n+1)).join(this);
};
var s = "司徒正美"
var start = new Date();
a = s.times(1000000);
var end = new Date();
alert("所耗时间 " + (end-start));
}
</script>
</head>
<body>
<pre>
String.prototype.times = function(n) {
return (new Array(n+1)).join(this);
};
var s = "司徒正美"
var start = new Date();
a = s.times(1000000);
var end = new Date();
alert("所耗时间 " + (end-start));
</pre>
</body>
</html>
运行代码
创建一个n+1的空数组,调用join方法。
方法二
String.prototype.times = function(n) {//IE6 570~600 FF3 320~430 chrome 550~900 IE8 422~490
return Array.prototype.join.call({length:n+1}, this);
};
<!doctype htm
相关文档:
1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键
<table border oncontextmenu=return(false)><td>no</table> 可用于Table
2. <body onselectstart="return false"> 取消选取、防止复制
3. onpaste="return false" 不准粘贴
4. oncopy="return false;" oncut="re ......
在JavaScript中字符串是用引号“" "”、“' '”包起来的零个至多个字符。用哪个引号开始就用哪个结束,而且单双引号可嵌套使用,不过JavaScript 中引号的嵌套只能有一层。如果想再多嵌一些,需要用转义字符:
转义字符 由于一些字符在屏幕上不能显示,或者 JavaScript 语法上已经有了特殊用途, ......
1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键
<table border oncontextmenu=return(false)><td>no</table> 可用于Table
2. <body onselectstart="return false"> 取消选取、防止复制
3. onpaste="return false" 不准粘贴
4. oncopy="return false;" oncut=" ......
今天看到同事harry_duan写的一个js文件,感觉挺有意思。
目地是在js文件中使用jstl的fmt:message
1.在资源文件中定义消息 errors.message1=error xxxxxx
2.创建一个js文件,为了jstl能用,将js文件命名为 myjs.js.jsp (以jsp结尾)
js 代码
<%@ page contentType="text/html; charset=utf-8 ......