常用10个JavaScript小技巧
javascript 实现replaceAll方法功能
JavaScript中只有replace方法,并不提供replaceAll方法,再此只能自己写replaceAll方法了。
String.prototype.replaceAll = function(s1,s2){
return this.replace(new RegExp(s1,”gm”),s2);
}
或者使用
str.replace(new RegExp(s1,”gm”),s2);
正则表达式(判断匹配汉字 )
输入测试字符串: <input type=”text” onblur=”test(this.value);”>
<script language=”javascript”>
<!–
//测试匹配情况
function test(inputVal)
{
//去除首尾空格
inputValinputVal = inputVal.replace(/^\s*|\s*$/g,”");
//零长字串不作处理
if ( inputVal.length == 0 )
{
return;
}
//只能匹配数字,字母或汉字
var _match = inputVal.match(/^[a-zA-Z0-9\u4e00-\u9fa5]+$/g);
//匹配数字或字母(包括大小写)
var codeMatch = inputVal.match(/[a-zA-Z0-9]/g);
//匹配汉字
var charMatch = inputVal.match(/[\u4e00-\u9fa5]/g);
//数字或字母个数
var codeNum = codeMatch ? codeMatch.length : 0;
//汉字个数
var charNum = charMatch ? charMatch.length : 0;
//成功
if ( _match && codeNum + 2*charNum <= 12 )
{
alert(“输入正确!”);
return;
}
//失败
alert(“输入错误!”);
}
//–>
</script> (全文…)
YUI 全局对象之YUI Core
这个例子演示如何使用YUI Core
创建一个YUI实例
<html>
<body>
<div id="wrapper" style="width:100px;height:100px;background-color:Yellow;">
i am a div!
</div>
<script src="http://yui.yahooapis.com/3.0.0/build/yui/yui.js"></script>
<script>
YUI().use('node', function(Y) {
//在此操作dom
var wrapper= Y.one('#wrapper');
Y.log('Found node.. Setting style');
wrapper.setStyle('backgroundColor', '#D00050');
wrapper.set('innerHTML', '<strong>Changed!</strong>');
});
</script>
</body>
</html>
Javascript 中的变量
使用过javascript的朋友都知道,在 javascript中,变量的使用是个比较头疼的问题,经常会产生 些比较匪夷所思的结果。究其原因,大多是对javascript的变量相关知识了解得不够透彻。
javascript中的所有变量都是类型松散的,不同于 其他面向对象语音的变量声明都是强类型的.因此Javascript 的变量声明是不包括类型的。通过var关键字或者直接写变量名来声明一个变量,如:
var v = 1;
v=1;
这时有人可能会问,上述的两种声明有什么区别,为什 么会有这两种不同的声明方式,这就涉及到javascript中变量的作用域了。在javascript中,变量的作用域包括全局和函数级别的。
(全文…)
javascript 正则表达式 应用方法 实例
很长时间没看 正则表达式了,碰巧今天用到,温故知新了 一把 看书学习吧
1 javascript 正则对象创建 和用法
声明javascript 正则表达式
var reCat = new RegExp(“cat”);
你也可以
var reCat = /cat/; //Perl 风格 (推荐)
(全文…)
javascript 字符串转化为整数 什么方法
Integer.parseInt(String)???? or???? parseInt(String?? )
var?? n=parseInt(“123″);
if(isNaN(n))
{
//不能转数字
}
Comet, 下一代反向AJAX(即服务器推送技术- Server-side push)
理解 Comet
您可能已经听说过 Comet,因为它最近受到了一定的关注。Comet 有时也称反向 Ajax 或服务器端推技术(server-side push)。其思想很简单:将数据直接从服务器推到浏览器,而不必等到浏览器请求数据。听起来简单,但是如果熟悉 Web 应用程序,尤其是 HTTP 协议,那么您就会知道,这绝不简单。实现 Comet 风格的 Web 应用程序,同时保证在浏览器和服务器上的可伸缩性,这只是在最近几年才成为可能。目前一些主流网站都有类似的原理,例如:webQQ、开心网、白社会等等,它们中消息动态都是采用类似的技术,也许具体实现方式不一样;
(全文…)
javascript 去除多余空格函数 trim
/**
* 去除多余空格函数
* trim:去除两边空格 lTrim:去除左空格 rTrim: 去除右空格
* 用法:
*???? var str = “? hello “;
*???? str = str.trim();
*/
String.prototype.trim = function()
{
return this.replace(/(^[\\s]*)|([\\s]*$)/g, “”);
}
String.prototype.lTrim = function()
{
return this.replace(/(^[\\s]*)/g, “”);
}
String.prototype.rTrim = function()
{
return this.replace(/([\\s]*$)/g, “”);
}