JS 特殊字符的验证的问题
个人的JS 的收集方便下次的使用做百度查询:
1. 特殊字符的验证:
var pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]");
//开始时间控件初始化
$('#Add_StarTime').datetimepicker({
language: 'zh-CN',//显示中文
format: 'yyyy-mm-dd',//显示格式
minView: "month",//设置只显示到月份
autoclose: true,//选中自动关闭
todayBtn: true//显示今日按钮
}).on('change', function (ev) {
var startDate = $('#Add_StarTime').val();
$("#Add_EndTime").datetimepicker('setStartDate', startDate);
$("#Add_StarTime").datetimepicker('hide');
});
//结束时间控件初始化
$('#Add_EndTime').datetimepicker({
language: 'zh-CN',//显示中文
format: 'yyyy-mm-dd',//显示格式
minView: "month",//设置只显示到月份
autoclose: true,//选中自动关闭
todayBtn: true//显示今日按钮
}).on('change', function (ev) {
var EndTime = $('#Add_EndTime').val();
$("#Add_StarTime").datetimepicker('setEndDate', EndTime);
$("#Add_EndTime").datetimepicker('hide');
});
3.关于地址的验证:
var regUrl=/(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?/;
4. 关于JS Arguments用法
在JavaScript中,arguments对象是比较特别的一个对象,实际上是当前函数的一个内置属性。arguments非常类似Array,但实际上又不是一个Array实例。可以通过如下代码得以证实(当然,实际上,在函数funcArg中,调用arguments是不必要写成funcArg.arguments,直接写arguments即可)。但是实参和形参之间是相互影响的,比如如果修改了 arguments[0]='hello'那么a 的值也会变成hello.
5、由JavaScript中函数的声明和调用特性,可以看出JavaScript中函数是不能重载的。
根据其他语言中重载的依据:'函数返回值不同或形参个数不同',我们可以得出上述结论:
第一:Javascript函数的声明是没有返回值类型这一说法的;
第二:JavaScript中形参的个数严格意义上来讲只是为了方便在函数中的变量操作,实际上实参已经存储在arguments对象中了。
另外,从JavaScript函数本身深入理解为什么JavaScript中函数是不能重载的:在JavaScript中,函数其实也是对象,函数名是关于函数的引用,或者说函数名本身就是变量。对于如下所示的函数声明与函数表达式,其实含以上是一样的(在不考虑函数声明与函数表达式区别的前提下),非常有利于我们理解JavaScript中函数是不能重载的这一特性。
6、arguments对象中有一个非常有用的属性:callee。arguments.callee返回此arguments对象所在的当前函数引用。在使用函数递归调用时推荐使用arguments.callee代替函数名本身。表示对函数对象本身的引用,也就是所指定的Function 对象的正文,这有利于实现无名函数的递归或者保证函数的封装性。