菜单

JavaScript的总结博客

2020年1月6日 - 澳门太阳娱乐手机登录

JavaScript总结

时下,自个儿对JavaScript的上学和询问什么少,所以就借鉴的各位大神的博文将此篇JavaScript的下结论博客写了出来,还请各位笑纳!

一、查找HTML元素

  经常,通过 JavaScript,您须要操作 HTML 成分。

  1、通过 id 找到 HTML 元素

  2、通过标具名找到 HTML 成分

  3、通过类名找到 HTML 成分

提示:通过类名查找 HTML 成分在 IE 5,6,7,8 中没用。

var x=document.getElementById("intro");
var y=document.getElementsByTagName("p");

①、校正 HTML 成分的开始和结果 (innerHTML卡塔尔(قطر‎

document.getElementById(id).innerHTML=new HTML

②、改变 HTML 属性

document.getElementById(id).attribute=new value
document.getElementById("image").src="landscape.jpg";

③、改变 HTML 样式

document.getElementById(id).style.property=new style
<script>
document.getElementById("p2").style.color="blue";
</script>

④、加多或删除 HTML 成分

二、DOM 事件

1、Js中的事件

行为,结构,样式分离的页面

诚如事件 onclick 鼠标点击时触发那事件

ondblclick 鼠标双击时触发这事件
onmousedown 按下鼠标时触发那件事件
onmouseup 鼠标按下后松手鼠标时触发那事件
onmouseover 当鼠标移动到某目的约束的上边时触发那一件事件
onmousemove 鼠标移动时触发此事件
onmouseout 当鼠标离开某指标约束时触发那一件事件
onkeypress 当键盘上的某部键被按下相同的时候释放时触发那一件事件.
onkeydown 当键盘上有些开关被按下时触发那一件事件
onkeyup 当键盘上某些按钮被按松开时触发那件事件

①、绑定事件的3种办法

1: 直接写在html标签内表明

这种写法最古老,包容性最强.归属DOM的lev0级的标准.这么些功能,等同于在点击div的时候,实践”t(卡塔尔;”这一语句,

在大局范围内试行,由此,t函数内部的this指代全局对象–>window
想操作被点击的DOM对象,用this就老大了.

第2种绑定格局:

DOM对象.onclick = function () {}

这种绑定是把叁个DOM对象onclick属性赋值为三个函数,

所以,函数内部的this直接指向该DOM对象.

在此种绑定形式中,只好给叁个事变,绑定四个管理函数

即 .onclick = fn1; .onclick = fn2;

聊起底的效劳, 是.onclick = fn2;

万生龙活虎用函数来调用别的函数的样式

例.onclick = function () {fn1(),fn2()}

那正是说那时, fn1,fn第22中学的this又针对window.

怎么绑定多个函数, 并令this指向DOM对象

其两种绑定事件的不二等秘书籍:

DOM lev3的事件绑定典型

增多和去除监听事件.

add伊芙ntListener(‘事件’,函数State of Qatar; // 第八个参数事件参数, 未有前缀”on”,
w3c的正经八百,IE不扶植

介怀点1: 若是加多了多少个事件管理函数, 按”增多时的前后相继顺序来实行”

静心占2: 事件管理函数中的this 指代 DOM节点自个儿 (w3c标准卡塔尔

在乎点3: 第多少个事件参数,风流倜傥律把事件名称的’on’去掉 (w3c规范State of Qatar

 

删除绑定

removeEventListener(‘事件’,函数)

IE下绑定事件与扼杀事件的秘诀

attachEvent(‘事件’,函数) // 注意: 事件 要加on

detach伊芙nt(‘事件’,函数State of Qatar // 事件还是要加on

总括一下:

W3c addEventListener 与IE的attachEvent()的不同

1: 函数名分化

2: 事件名分化, IE下要加on,w3c不加on

3: 加风云后的实行种种差别, w3c按绑定事件的依次来推行,
而IE6,7,8,是后绑定的风云先产生.

4: this的照准, w3c中,绑定函数中的this指向 DOM对象,
而IE6,7,第88中学,指向window对象

三、事件的捕捉与冒泡模型

在w3c的模型中,

addEventListener 帮助 第三个参数来声称事件的模子为冒泡依然捕捉.

只要评释为 true,则为捕捉方式

倘使表明为false, 也许不注解, 则为冒泡格局

介怀: IE的attch伊芙nt 未有首个参数,不帮助捕捉模型

事件目的的概念:

当事件对应的函数被触发时, 函数会接纳到三个事变参数, // w3c标准

例 xx.onclick = function (ev) {alert(ev)}

点击后,ev 参数就表示单击那弹指间的”各样参数”,以一个对象的点子传过去.

对此IE, 当事件时有产生的须臾间,事件指标赋值给window.event属性

四、事件的间歇

什么样中断事件的不胫而走???????

在w3c: 事件.stopPropagation();

在IE中, 事件对象.cancelBubble = true;

cancelBubble = true //IE打消冒泡

stopPropagation(State of Qatar; // w3c撤消冒泡

returnValue = false; // IE撤除事件效果

preventDefautl(State of Qatar ;// w3c废除事件效果

撤除事件的暗中同意效果

事件对象.preventDefault(卡塔尔; // 阻止事件的暗中认可效果, w3c方法

事件对象.returnValue = false; // 设置returnValue 的属性值为false;

五、Js 功能域链(是指AO链)

1:参数

2:局地变量声明

3:函数评释

* 函数扬言与函数表达式的界别

表明式必有重临值,把重返值(即无名氏函数卡塔尔(قطر‎赋给了三个变量.

那时候 正是常常的赋值进程.

①、js并不是一句一句顺序实施的,先实行词法剖判

This, 与 arguments

当三个函数运转的时候,函数内部能引用的变量有那般二种

AO、arguments、this

对此 arguments和this, 各种函数都有友好唯有的arguments和this,
且不开展链式查找

arguments是什么?

答:1:arguments是收到的实参别本

2:收到实参收罗起来,放到三个arguments对象里

在词法解析中, 首先按形参变成AO的质量,值为undefined

当实参传来时, 再更正AO的相应属性.

t(a,b,c){},

调用时: t(1,2,3,4,5) 个参数

当时 , AO属性独有a,bc,3个属性, arguments里有1,3,3,4,5, 全部的值

对此超过形参个数之外的实参, 能够通过arguments来获取

3:arguments 的索引 从 0, 1,2,….依次增加,与实参每一种对应

4:arguments.length 属性代表实参的个数

5:Arguments一定不是数组, 是长的可比像数组的二个指标,即使也许有length属性

6:Arguments每种函数都会有,由此,arguemnts只会在内部找笔者的arguments,

没辙援用到外围的arguments

This是谁

This是指调用上下文

本着函数的施用处景来研讨

函数的4种调用方式

1:函数方式

直白调用函数名,或函数表达式的重回值,

This指代全局对象,window

2:属性形式(对象方法格局卡塔尔国

This指代该目标(方法的属主State of Qatar

3:布局器形式

因此 new 函数 名(State of Qatar , 来创立对象

在js里, 结构函数与指标的涉嫌相比松散,

对象正是”属性->值”的聚众

构造器的作用,是制作叁个对象,把this指向该目标,

4:call,apply方式

函数本身正是对象,对象就有艺术

函数名.call(对象,参数1,参数2,参数3);

以fn.call(obj,’a’,’b’);

实效也正是

1:fn内部的this指向了obj

2:fn(‘a’,’b’);

Apply的功效与call同样, 只不过传参时,把具有参数包装在数组里,传过去.

例 fn.call(obj,’a’,’ b’) ===> fn.apply(obj,[‘a’,’b’]);

还应该有朝气蓬勃种转移this的办法

With 语句

With(对象) {

语句1

语句2

…..

}

在with内部的话语,就把参数中的对象就是的光景文情形.

六、词法分析

js实践各种

1:词法剖判阶段

先把收到到的参数放到激活对象上

 

再对函数体中代码作深入分析

a: var xx = yy;

做法:表明大器晚成(WissuState of Qatar个xx属性在激活对象上,

但不赋值,借使已经有xx,则不无动作.

b:function ttt() {

}

做法:直接申明ttt属性,

且剧情是函数体

 

2:试行语句阶段

 

六、Js面向对象

属性,方法–>对象

“类”能幸不辱命封装,世襲,多态,

“类”的静态方法

1: js中的对象是何许?

答:js的对象正是键值对的冬辰汇集

2:种创建对象的法子

①、通过字面量来创设对象

例:{age:22,hei:180}

{}->空对象,未有质量

②、通过 new Object([value]);

经过结构函数来创设对象(和第2种没差别,因为Object正是系统内建的布局函数卡塔尔(قطر‎

七、Js面向对象中的封装

javascript语言中,未有现存的村办属性/方法机制,

但足以通过功效域来模拟私有属性,私有方法

 

目的的属性外部是可读可写的, 如何来达到封装的目标?

答:通过闭包+局地变量来形成

在结构函数内部宣称局部变量, 和管见所及方法,

因为功用域的关系,独有构造函数内的方法,本领访谈到一些变量.

而艺术对于外部是开放的,因而得以由此艺术来访问片段变量.

事件触发总括:

1、onmousedown
概念:onmousedown事件会在鼠标按钮被按下时发出

2、onmouseup
概念:onmouseup事件会在鼠标按钮被卸掉时发出

3、onmousemove
概念:onmousemove事件会在鼠标指针移动时发出
协助该事件的js对象:document
只是onmousemove暗中认可情状下未有此外对象的贰个风浪;
因为鼠标移动频仍发生。

4、onmouseover
概念:onmouseover事件会在鼠标指针移动到钦点的对象上时发生

5、onmouseout
概念:onmouseout事件会在鼠标指针移出钦定的目的时爆发

6、onclick单击事件
概念:onclick事件和onmousedown分裂。单击事件是在同一元素上爆发了
鼠标按下时间之后产生了鼠标松开时间是发出的。
领悟:鼠标按下抬起随后事件才发出。

7、onfocus光标移入事件
概念:onfocus事件在目的拿到宗旨时发出

8、onblur光标移出事件
概念:onblur事件会在对象失去主旨时产生

9、oncontextmenu右键事件
鼠标按下右键的时候发出

10、onsubmit
onsubmit事件会在表单中的确认开关(submit)被
点击是发生。

11、onkeydown
onkeydown事件会在顾客按下一个键盘按钮时发生

12、onkeyup
obkeyup事件会在键盘开关被卸下时产生

13、onload
onload事件会在页面或图像加载成功后马上产生

14、onscroll
onscroll事件拖动滚动条时产生

15、onresize
onresize事件会在窗口或框架被调治大小时发(Zhong Fa卡塔尔生

16、onmousewheel
onmousewheel事件ie、chrome下鼠标滚轮滚动时发出

17、DOMMouseScroll
DOMMouseScroll事件是标准下(ff卡塔尔国鼠标滚轮事件,
鼠标滚轮滚动时发出

18、onreadystatechange
onreadystatechange事件:当号召被发送到服务器时;
咱俩必要施行一些依照响应的天职。每当readyState
改进时,就能触发onreadystatechange事件。
readyState属性存有XMLHttpRequest的景色消息。
在onreadystatechange事件中,我们分明当服务器响应
已搞好被拍卖的预备时所举办的职责。

19、attach伊夫nt绑定事件
ie下的绑定事件,2个参数,第一个怎么着风云,第一个执
行函数(倒序执行)。注意this指向
如:obj。attachEvent(‘onclick’,aaa)
function aaa(){}

20、addEventListener绑定事件
正规下的绑定事件,3个参数。1哪些风云(不加ON),
2执行函数 3、一个布尔值。true是捕获阶段,false是
冒泡阶段

21、event对象指事件的情况

轻便的:三个 存了 事件详细消息的东西

网络较规范的:Event对象表示事件的动静,例如事件在里边发生的要素
键盘按钮的景况,鼠标之处,鼠标开关的事态,平日
与函数结合使用。

22、clientX、clientY
在伊芙nt对象下得到鼠标地点

23、cancelBubble =true
在伊夫nt对象下撤废冒泡事件

24、keyCode
在伊夫nt对象下得到客商按下键盘的哪位开关

25、preventDefault()
堵住暗中认可暗许事件的绑定写法

26、return false
阻止暗中同意时间的平日写法

二、DOM 27-46
27、getElementById
通过id获取某贰个成分

28、getElementsByTagName
经过标署名获得黄金时代组成分的聚合

29、childNodes
得到子节点,然而正式下会获取空白节点
获得第一流子成分的节点

30、nodeType
节点类型
1)成分节点(标签)2)文本节点(空白节点)

31、children
赢得子节点,不过从未包容性难点
获得第一流子成分的节点

澳门太阳娱乐手机登录,32、firstElementChild || firstChild
标准下:firstElementChild ie不支持
ie下是 firstChild
收获子成分里的首先个

33、lastElementChild || lastChild
标准下:lastElementChild ie不支持
ie下是 lastChild
赢得子成分里的结尾三个

34、nextElementSibling || nextSibling
标准下:nextElementSibling ie不支持
ie下 nextSibling
获取子钦命成分的下一个男生节点

35、previousElementSibling || previousSibling
标准下: previousElementSibling ie不支持
id:previousSibling
获得钦命成分的上三个男生节点

36、parentNode
收获父节点

37、offsetParent
得到有固定的父节点,都未曾一直的话父节点正是body

38、offsetWidth—–有问题
赢得成分的实际上增长幅度(width+padding+border)

39、offsetHeight
得到成分的惊人(height+padding+border)

40、clientWidth
得到成分的里边宽度(width+padding)

41、clientHeight
收获成分的内部中度(height+padding)

42、createElement(标签名)
创立三个节点

43、appendchild(节点)
日增二个节点

44、insertBefore(节点,原有节点)
在已部分成分前边插入

45、removeChild(节点)
JavaScript的总结博客。删除贰个节点

46、replaceChild(节点,已有节点)
轮番已部分节点

三、BOM操作: 47-53
47、window。open()
开荒窗口

48、window。close()
关门窗口,标准下不扶助

49、window。location
拿到浏览器地址

50、window。location。href
收获全部的网站

51、window。location。search
赢得问号?前面包车型客车剧情,富含问号

52、window。location。hash
拿到警号#背后的原委,包罗警示信号

53、window。location。reload()
机关刷新,放大计时器合营

53、window。navigator。userAgent
拿到浏览器音信

 

四、js基础: 54-126
54、if else 如果。。。。否则。。。

55、switch 如果

56、?: 三木,就是意气风发旦。。。不然。。。

57、for(){} for循环

58、for in

59、while=for

60、continue 终止这次巡回
if(i=2)continue 跳过这些准绳

61、break 终止当前巡回
if(i=3卡塔尔国break 甘休本次

62、undefined 未定义

63、null=========?

64、=== 只比较,不改动类型

65、== 不唯有比较,何况还有只怕会将三个东西转变到相符的品类

66、= 赋值

67、! 就是 不 的意思

68、setTimeout
安装放大计时器,2秒钟后,实践三次,并且只进行叁回,—依期炸弹

69、clearTimerout
略知大器晚成二放大计时器,清理setTimerout

70、setInterval
安装反应计时器,每两秒推行一次

71、clearInterval
接头机械漏刻,清理setInterval

72、arguments
实参的因素集合

73、call
改变this取向
fn名.call(this,‘black’)第四个参数是函数之行的情状,
从第3个参数早先,才是函数的实在参数

oDiv.onclick = function(){
toChange.call(this,’black’);
};
function toChange(sColor){
this.style.background = sColor;
}

74、apply
改变this取向,
function show(a, b)
{
alert(‘this是:’+this+’na是:’+a+’nb是:’+b);
}
show(12, 8);
show.apply(document, [12, 8]);
其次个参数是以数组时局存在的

75、callee ===============?调用那个函数自个儿的

76、var arr=【】; 声美素佳儿(Friso卡塔尔国个数组

77、var arr=new Array() 声美素佳儿个数组

78、push
向数组的最后加多三个或更加的多因素,并回到新的长度

79、pop
删去数组最终一个成分,并重回那一个元素

80、shift
删除数组第八个成分,并再次来到这一个成分

81、unshift
向数组的发端增加三个或多少个要素,并赶回新的长短

82、splice
删去成分,并向数组增加新的成分

83、join()
把数组的有着因素放入多少个字符串。成分通过点名
的相间符举行分隔

84、sort()
对数组的因素进行排序

85、concent—-concat()?
老是五个数组或许四个数组,并再次回到结果

86、split
分割字符串,拿到数组

87、substring
获得字符串
席卷开始不蕴涵结束

88、indexOf
之前今后查找字符串

89、charAt
拿到有些字符

90、var re=//; 声美赞臣(MeadjohnsonState of Qatar个正则对象

91、var re=new RegExp(卡塔尔国 声圣元(BeingmateState of Qatar个正则对象

92、search 查找二个字符串,只找第叁遍面世的岗位

93、month ===============?
match-匹配相符正则的东西,挑东西回去数组

94、test 用正则查验字符串是不是顺应它所规定的平整

95、replace 替换,把符合法规的东西替换来字符串

96、量词:{n,m}最少现身n次,最多产出m次
+许多
* {0,} 0到大四次
?零次恐怕叁次{0,1}
{n,}最少n次,最多不限
{,m}起码不限最多m次
{n}正好n次

97、字符类:
1[abc]2 1和第22中学级现身a或b或c
[^0-9]祛除数字以外全部都足以
[a-z]享有的Lithuania语
[0-9]具备的数字

98、标记: i 忽视大小写 g 全局相称

99、首尾: ^ $

100、转义:
d 查找数字 [0-9]
D 除了数字[^0-9]
s 空白
b 单词边界
w 数字字母下划线–客商名
. 放肆字符
. 代表.本身

101、var oDate= new Date() 获取当前时间

102、getHours() 获取小时

103、getMinutes() 获取分钟

104、getSeconds() 获取秒

105、getFullYear() 获取年

106、getDay() 获取星期

107、getDate() 获取当前的小时日期

108、setDate() 设置四个月的某一天

109、var oImg=new Image() 创制一个image对象

110、什么叫ajax
通过XMLHttpRequest与服务器通讯,实行无刷新操作

ajax选择的是异步央浼

111、同步与异步的分别

合营正是同期做大器晚成件事
异步正是同期做多件事

112、ajax的人机联作方式
1)发送数据并赶回 ()(注册)
2)只发送不再次来到 ()========?例子
3)不发送只再次来到 (股票)

113、post与get的区别
1)发送方式差异等:get加载网址问安前面包车型地铁
post把多少放在一个传输体中发送上去的

2)安全不相仿
post绝对安全,get不安全

3)网站长度不雷同
ie下get网站超越2048字节将被截断
post未有上限

4)缓慰难点
get可以缓存网站,post不会缓存网站

5)用项不等同
get:查询数据,post改正数据

114、发送数据是如何的?
串联化数据:key1=value1&key2=value2

115、重临数据是怎样的?
回来的是字符串

116、跨域:jsonp?
(利用script标签跨域)
在头顶创设个script标签,
改变script标签中src

117、ajax的编辑步骤?
1)创建ajax对象(要有部手机)
2)链接服务器open(拨号)
3)监听数据再次回到onreadystatechange(听)
4)发送数据send(说)
5)close(忽略)(挂了)

118、json怎么取?=========?
经过串联化数据

119、什么是指标?
目的是三个全部,对外提供部分操作。||
黑盒子,看不到里面包车型客车指南,
能来看表面包车型地铁按键

120、什么是面向对象?
接收对象时,只关注对象提供的职能,
不关切其内部细节,比如jQuery ||
行使一个事物的时候,不去管内部是
如何做的,只用好它的职能

上面是收拾出来的部分函数,方便我们的求学和利用

 

/**
function obj$(id)                       根据id得到对象
function val$(id)                       根据id得到对象的值
function trim(str)                      删除左边和右边空格
function ltrim(str)                     删除左边空格
function rtrim (str)                    删除右边空格
function isEmpty(str)                   字串是否有值
function equals(str1, str2)             比较两字符串是否相等
function equalsIgnoreCase(str1, str2)   忽略大小写比较两个字符串是否相等
function isChinese(str)                 判断是否中文
function isEmail(strEmail)              是否电子邮件
function isImg(str)                     是否是一个图片格式的文件jpg|jpeg|swf|gif
function isInteger(str)                 是否是一个整数
function isFloat                        是否是一个浮点数
function isPost(str)                     是否邮编(1位至6位
function isMobile(str)                  是否是手机号
function isPhone(str)                   是否是电话号码必须包含区号,可以含有分机号
function isQQ(str)                      是否合法的QQ号码          
function isIP(str)                      是否是合法的IP
function isDate(str)                     是否日期类型(例:2005-12-12)
function isIdCardNo(idNumber)           是否是合法的身份证号
**/ 
/**
 * 替换
 * @param {Object} str
 * @param {Object} oldStr
 * @param {Object} newStr
 * @return {TypeName} 
 */ 
function repalce(str, oldStr, newStr) { 
    var reg = eval_r("/" + oldStr + "/g"); 
    return str.replace(reg, newStr); 
} 

/**
 * 左边截取
 * @param {Object} str
 * @param {Object} n
 * @return {TypeName} 
 */ 
function left(str, n) { 
    if (str.length > 0) { 
        if (n > str.length) 
            n = str.length; 
        return str.substr(0, n); 
    } else { 
        return; 
    } 
} 

/**
 * 右边截取
 * @param {Object} str
 * @param {Object} n
 * @return {TypeName} 
 */ 
function right(str, n) { 
    if (str.length > 0) { 
        if (n >= str.length) 
            return str; 
        return str.substr(str.length - n, n); 
    } else { 
        return; 
    } 
} 



function strip(str) { 
    if (typeof str == 'string') 
        return str.replace(/^s+/, '').replace(/(^s*)|(s*$)/g, ''); 
} 

function stripTags(str) { 
    if (typeof str == 'string') 
        return str.replace(/</?[^>]+>/gi, '').replace(/(^s*)|(s*$)/g, ''); 
} 
/**
 * 判断某个字符的长度在s和l之间
 * @param {Object} str
 * @param {Object} s
 * @param {Object} l
 * @return {TypeName} 
 */ 
function isLen(str, s, l) { 
    str = Trim(str) 
    if (str.length > s && str.length < l) { 
        return true; 
    } else { 
        return false; 
    } 
} 

/**
 * 是否为数字
 * @param {Object} str
 * @return {TypeName} 
 */ 
function isNumber(str){ 
    if (/^d+$/.test(str)){ 
        return true; 
    }else{ 
        return false; 
    } 
} 



function isLetters(str){ 
    if (/^[A-Za-z0-9]+$/.test(str)){ 
        return true; 
    }else{ 
        return false; 
    } 
} 

function isLetter(str){ 
    if (/^[A-Za-z]+$/.test(str)){ 
        return true; 
    }else{ 
        return false; 
    } 
} 

function isUpper(str){ 
    if (/^[A-Z]+$/.test(str)){ 
        return true; 
    }else{ 
        return false; 
    } 
} 

function isLower(str){ 
    if (/^[a-z]+$/.test(str)){ 
        return true; 
    }else{ 
        return false; 
    } 
} 


/**
*根据对象的id得到对象
*id:对象的id
*/ 
function obj(id) 
{ 
    return document.getElementById(id); 
} 

/**
*根据对象的id得到对象的值
*id:对象的id
*/ 
function val(id) 
{ 
    var obj = document.getElementById(id); 
    if(obj !== null) 
    { 
        return obj.value; 
    } 
    return null; 
} 

/**
*去掉字符串的前后空格
*str:将要除去空格的字符串
*/ 
function trim(str) 
{ 
    return str.replace(/(^s*)|(s*$)/g, ''); 
} 

/**
*去掉字符串前的空格
*str:将要除去空格的字符串
*/ 
function ltrim(str) 
{ 
    return str.replace(/^s*/g,''); 
} 

/**
*去掉字符串后的空格
*str:将要除去空格的字符串
*/ 
function rtrim(str) 
{ 
    return str.replace(/s*$/,''); 
} 

/**
*字符串是否有值
*str:要检测的字符串
*/ 
function isEmpty(str) 
{ 
    if(str != null && str.length > 0) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*比较两个字符串是否相等
*str1:要比较的字符串1
*str2:要比较的字符串2
*/ 
function equals(str1, str2) 
{ 
    if(str1 == str2) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*忽略大小写比较两个字符串是否相等
*str1:要比较的字符串1
*str2:要比较的字符串2
*/ 
function equalsIgnoreCase(str1, str2) 
{ 
    if(str1.toUpperCase() == str2.toUpperCase()) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是中文
*str:要检测的字符串
*/ 
function isChinese(str) 
{ 
   var str = str.replace(/(^s*)|(s*$)/g,''); 
   if (!(/^[u4E00-uFA29]*$/.test(str) 
           && (!/^[uE7C7-uE7F3]*$/.test(str)))) 
   { 
      return false; 
   } 
   return true; 
} 

/**
*是否是Email
*str:要检测的字符串
*/ 
function isEmail(str) 
{ 
    if(/^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$/.test(str)) 
    { 
        return true 
    } 
    return false; 
} 

/**
*是否是图片格式文件
*str:要测试的文件名
*/ 
function isImg(str) 
{ 
    var objReg = new RegExp("[.]+(jpg|jpeg|swf|gif){1}quot;, "gi"); 
    if(objReg.test(str)) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是一个整数
*str:要检测的字符串
*/ 
function isInteger(str) 
{ 
    if(/^-?d+$/.test(str)) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是一个浮点数
*str:要检测的字符串
*/ 
function isFloat(str) 
{ 
    if(/^(-?d+)(.d+)?$/.test(str)) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是邮编
*str:要检测的字符串
*/ 
function isPost(str) 
{ 
    if(/^d{1,6}$/.test(str)) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是手机号码
*str:要检测的字符串
*/ 
function isMobile(str) 
{ 
    if(/^1[35]d{9}/.test(str)) 
      { 
          return true; 
      } 
    return false; 
} 

/**
*是否是电话号码
*str:要检测的字符串
*电话号码必须有区号,可以有分机号
*/ 
function isPhone(str) 
{ 
    if(/^(0[1-9]d{1,2}-)d{7,8}(-d{1,8})?/.test(str)) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是合法的QQ号码
*str:要检测的字符串
*/ 
function isQQ(str){ 
    if(/^d{5,9}$/.test(str)) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是合法的IP
*str:要检测的字符串
*/ 
function isIP(str){ 
    var reg = /^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]).(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0).(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0).(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$/; 
    if(reg.test(str)) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是一合法日期
*str:要检测的字符串
*/ 
function isDate(str) 
{ 
    var reg = /^((((1[6-9]|[2-9]d)d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]d|3[01]))|(((1[6-9]|[2-9]d)d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]d|30))|(((1[6-9]|[2-9]d)d{2})-0?2-(0?[1-9]|1d|2[0-8]))|(((1[6-9]|[2-9]d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$/; 
    if(reg.test(str)) 
    { 
        return true; 
    } 
    return false;    
} 

 

JavaScript的总括博客

一、查找HTML元素

  日常,通过 JavaScript,您必要操作 HTML 成分。

  1、通过 id 找到 HTML 元素

  2、通过标具名找到 HTML 成分

  3、通过类名找到 HTML 成分

唤醒:通过类名查找 HTML 成分在 IE 5,6,7,8 中没用。

var x=document.getElementById("intro");
var y=document.getElementsByTagName("p");

 

①、退换 HTML 成分的内容 (innerHTMLState of Qatar

document.getElementById(id).innerHTML=new HTML

 

②、改变 HTML 属性

document.getElementById(id).attribute=new value
document.getElementById("image").src="landscape.jpg";

 

③、改变 HTML 样式

document.getElementById(id).style.property=new style
<script>
document.getElementById("p2").style.color="blue";
</script>

 

④、增添或删除 HTML 元素

二、DOM 事件

1、Js中的事件

表现,构造,样式抽离的页面

诚如事件 onclick 鼠标点击时触发那件事件

ondblclick 鼠标双击时触发那件事件
onmousedown 按下鼠标时触发那一件事件
onmouseup 鼠标按下后放手鼠标时触发这事件
onmouseover 当鼠标移动到某目标范围的上边时触发这一件事件
onmousemove 鼠标移动时触发此事件
onmouseout 当鼠标离开某指标范围时触发那一件事件
onkeypress 当键盘上的有个别键被按下同时释放时触发那件事件.
onkeydown 当键盘上有个别开关被按下时触发那一件事件
onkeyup 当键盘上某些按钮被按松开时触发此事件

①、绑定事件的3种方式

1: 直接写在html标签内申明

 

 

这种写法最古老,包容性最强.归于DOM的lev0级的标准.这些意义,等同于在点击div的时候,实施”t(卡塔尔国;”这一语句,

在大局范围内试行,由此,t函数内部的this指代全局对象–>window想操作被点击的DOM对象,用this就那些了.

第2种绑定方式:

DOM对象.onclick = function () {}

这种绑定是把二个DOM对象onclick属性赋值为三个函数,

故此,函数内部的this间接指向该DOM对象.

在这里种绑定格局中,只可以给一个平地风波,绑定叁个管理函数

即 .onclick = fn1; .onclick = fn2;

聊到底的效率, 是.onclick = fn2;

一旦用函数来调用其余函数的花样

例.onclick = function () {fn1(),fn2()}

那么当时, fn1,fn第22中学的this又针对window.

怎么绑定七个函数, 并令this指向DOM对象

其三种绑定事件的法门:

DOM lev3的风云绑定规范

增进和去除监听事件.

add伊芙ntListener(‘事件’,函数卡塔尔; // 第一个参数事件参数, 没有前缀”on”,
w3c的正规,IE不帮衬

只顾点1: 假如加多了三个事件管理函数, 按”增添时的前后相继顺序来实行”

只顾占2: 事件管理函数中的this 指代 DOM节点自己 (w3c标准卡塔尔国

只顾点3: 第七个事件参数,意气风发律把事件名称的’on’去掉 (w3c标准卡塔尔

 

删除绑定

removeEventListener(‘事件’,函数)

IE下绑定事件与清除事件的点子

attachEvent(‘事件’,函数) // 注意: 事件 要加on

detach伊芙nt(‘事件’,函数卡塔尔(قطر‎ // 事件依然要加on

小结一下:

W3c addEventListener 与IE的attachEvent()的不同

1: 函数名不相同

2: 事件名不一样, IE下要加on,w3c不加on

3: 加事变后的施行顺序分歧, w3c按绑定事件的各种来实行,
而IE6,7,8,是后绑定的事件头阵生.

4: this的指向, w3c中,绑定函数中的this指向 DOM对象,
而IE6,7,8中,指向window对象

 

===================================================================================================================================================================================

 

 

事件触发计算:

1、onmousedown
概念:onmousedown事件会在鼠标开关被按下时爆发

2、onmouseup
概念:onmouseup事件会在鼠标按钮被卸掉时产生

3、onmousemove
概念:onmousemove事件会在鼠标指针移动时发生
协助该事件的js对象:document
不过onmousemove暗中认可情形下未有别的对象的叁个事变;
因为鼠标移动频仍发生。

4、onmouseover
概念:onmouseover事件会在鼠标指针移动到内定的靶子上时爆发

5、onmouseout
概念:onmouseout事件会在鼠标指针移出钦赐的对象时产生

6、onclick单击事件
概念:onclick事件和onmousedown分化。单击事件是在同一成分上发出了
鼠标按下时间过后发出了鼠标松开时间是爆发的。
了然:鼠标按下抬起从此以后事件才发生。

7、onfocus光标移入事件
概念:onfocus事件在对象获得主旨时发生

8、onblur光标移出事件
概念:onblur事件会在对象失去宗旨时发出

9、oncontextmenu右键事件
鼠标按下右键的时候发生

10、onsubmit
onsubmit事件会在表单中的确认开关(submit)被
点击是爆发。

11、onkeydown
onkeydown事件会在客户按下二个键盘开关时产生

12、onkeyup
obkeyup事件会在键盘按钮被卸下时发出

13、onload
onload事件会在页面或图像加载成功后立刻爆发

14、onscroll
onscroll事件拖动滚动条时爆发

15、onresize
onresize事件会在窗口或框架被调动大刻钟发生

16、onmousewheel
onmousewheel事件ie、chrome下鼠标滚轮滚动时爆发

17、DOMMouseScroll
DOMMouseScroll事件是标准下(ffState of Qatar鼠标滚轮事件,
鼠标滚轮滚动时发出

18、onreadystatechange
onreadystatechange事件:当呼吁被发送到服务器时;
咱俩须要实施一些依照响应的职务。每当readyState
改良时,就能够触发onreadystatechange事件。
readyState属性存有XMLHttpRequest的情形音讯。
在onreadystatechange事件中,大家规定当服务器响应
已搞好被管理的备选时所奉行的任务。

19、attachEvent绑定事件
ie下的绑定事件,2个参数,第一个什么风云,第三个执
行函数(倒序试行)。注意this指向
如:obj。attachEvent(‘onclick’,aaa)
function aaa(){}

20、add伊芙ntListener绑定事件
正式下的绑定事件,3个参数。1怎么着风浪(不加ON),
2施行函数 3、叁个布尔值。true是捕获阶段,false是
冒泡阶段

21、event对象指事件的图景

简易的:三个 存了 事件详细信息的东西

网络较专门的学业的:Event对象表示事件的动静,比如事件在里边爆发的成分
键盘开关的事态,鼠标的职位,鼠标开关的境况,日常
与函数结合使用。

22、clientX、clientY
在Event对象下取得鼠标位置

23、cancelBubble =true
在Event对象下撤除冒泡事件

24、keyCode
在Event对象下拿到客商按下键盘的哪位按钮

25、preventDefault()
阻拦暗许暗中认可事件的绑定写法

26、return false
阻碍私下认可时间的通常写法

 

二、DOM 27-46
27、getElementById
经过id获取某叁个因素

28、getElementsByTagName
经过标签字拿到生龙活虎组成分的集结

29、childNodes
赢得子节点,不过正式下会获取空白节点
获得第拔尖子成分的节点

30、nodeType
节点类型
1)成分节点(标签)2)文本节点(空白节点)

31、children
获取子节点,但是并没有包容性难题
赢得第超级子成分的节点

32、firstElementChild || firstChild
标准下:firstElementChild ie不支持
ie下是 firstChild
获得子成分里的第三个

33、lastElementChild || lastChild
标准下:lastElementChild ie不支持
ie下是 lastChild
收获子成分里的末尾贰个

34、nextElementSibling || nextSibling
标准下:nextElementSibling ie不支持
ie下 nextSibling
获取子内定成分的下二个弟兄节点

35、previousElementSibling || previousSibling
标准下: previousElementSibling ie不支持
id:previousSibling
赢得钦命成分的上三个小伙子节点

36、parentNode
得到父节点

37、offsetParent
收获有一定的父节点,都不曾固定的话父节点正是body

38、offsetWidth—–有问题
得到成分的其实增长幅度(width+padding+border)

39、offsetHeight
收获成分的万丈(height+padding+border)

40、clientWidth
赢得成分的里边宽度(width+padding)

41、clientHeight
获得成分的里边中度(height+padding)

42、createElement(标签名)
创办一个节点

43、appendchild(节点)
追加三个节点

44、insertBefore(节点,原有节点)
在已部分成分后面插入

45、removeChild(节点)
去除二个节点

46、replaceChild(节点,本来就有节点)
改换已部分节点

 

三、BOM操作: 47-53
47、window。open()
开发窗口

48、window。close()
关门窗口,规范下不帮衬

49、window。location
收获浏览器地址

50、window。location。href
获得全体的网站

51、window。location。search
获得问号?前面包车型大巴剧情,包罗问号

52、window。location。hash
收获警示信号#前边的开始和结果,包含警示信号

53、window。location。reload()
自动刷新,电磁打点计时器合作

53、window。navigator。userAgent
获取浏览器新闻

 

四、js基础: 54-126
54、if else 如果。。。。否则。。。

55、switch 如果

56、?: 三木,正是借使。。。否则。。。

57、for(){} for循环

58、for in

59、while=for

60、continue 终止此番巡回
if(i=2)continue 跳过那一个准绳

61、break 终止当前轮回
if(i=3卡塔尔国break 甘休此番

62、undefined 未定义

63、null=========?

64、=== 只比较,不转换类型

65、== 不仅仅相比,何况还有恐怕会将多个东西调换来相近的品类

66、= 赋值

67、! 就是 不 的意思

68、setTimeout
安装计时器,2分钟后,试行贰回,并且只进行一遍,—准期炸弹

69、clearTimerout
清楚计时器,清理setTimerout

70、setInterval
安装放大计时器,每两秒施行叁次

71、clearInterval
精晓停车计时器,清理setInterval

72、arguments
实参的成分集结

73、call
改变this取向
fn名.call(this,‘black’)第贰个参数是函数之行的情状,
从第叁个参数最初,才是函数的确实参数

oDiv.onclick = function(){
toChange.call(this,’black’);
};
function toChange(sColor){
this.style.background = sColor;
}

74、apply
改变this取向,
function show(a, b)
{
alert(‘this是:’+this+’na是:’+a+’nb是:’+b);
}
show(12, 8);
show.apply(document, [12, 8]);
第叁个参数是以数组时局存在的

75、callee ===============?调用那一个函数自己的

76、var arr=【】; 声贝因美个数组

77、var arr=new Array() 声雅培(Abbott卡塔尔国个数组

78、push
向数组的末梢加多叁个或越多因素,并回到新的长短

79、pop
剔除数组最终贰个要素,并回到那几个元素

80、shift
去除数组第三个要素,并赶回那么些成分

81、unshift
向数组的起来增多叁个或七个成分,并回到新的长度

82、splice
删除成分,并向数组增添新的因素

83、join()
把数组的享有因素放入一个字符串。成分通过点名
的相间符进行分隔

84、sort()
对数组的要素进行排序

85、concent—-concat()?
三翻五次多少个数组大概多个数组,并赶回结果

86、split
分割字符串,得到数组

87、substring
赢得字符串
富含起首不包罗截至

88、indexOf
早先未来查找字符串

89、charAt
得到有个别字符

90、var re=//; 声贝拉米(Bellamy卡塔尔(قطر‎(Nutrilon卡塔尔个正则对象

91、var re=new RegExp(卡塔尔(قطر‎ 声惠氏(WYETH卡塔尔个正则对象

92、search 查找贰个字符串,只找第三遍面世的岗位

93、month ===============?
match-相称适合正则的东西,挑东西回到数组

94、test 用正则考验字符串是还是不是切合它所鲜明的法规

95、replace 替换,把符合准则的东西替换到字符串

96、量词:{n,m}最少现身n次,最多现身m次
+许多
* {0,} 0到任性次
?零次要么二回{0,1}
{n,}起码n次,最多不限
{,m}起码不限最多m次
{n}正好n次

97、字符类:
1[abc]2 1和第22中学间出现a或b或c
[^0-9]杀绝数字以外全数都得以
[a-z]负有的希腊语
[0-9]怀有的数字

98、标志: i 忽视大小写 g 全局相称

99、首尾: ^ $

100、转义:
d 查找数字 [0-9]
D 除了数字[^0-9]
s 空白
b 单词边界
w 数字字母下划线–客户名
. 任性字符
. 代表.本身

101、var oDate= new Date() 获取当前时刻

102、getHours() 获取小时

103、getMinutes() 获取秒钟

104、getSeconds() 获取秒

105、getFullYear() 获取年

106、getDay() 获取星期

107、getDate() 获取当前的日子日期

108、setDate() 设置一个月的某一天

109、var oImg=new Image() 创立叁个image对象

110、什么叫ajax
因而XMLHttpRequest与服务器通讯,举行无刷新操作

ajax接纳的是异步须求

111、同步与异步的分化

意气风发道正是同时做风流倜傥件事
异步正是同期做多件事

112、ajax的人机联作方式
1)发送数据并再次来到 ()(注册)
2)只发送不重返 ()========?例子
3)不发送只再次来到 (股票(stock卡塔尔国)

113、post与get的区别
1)发送情势不相符:get加载网站问安前面包车型大巴
post把数量放在贰个传输体中发送上去的

2)安全不等同
post绝对安全,get不安全

3)网站长度不等同
ie下get网站超过2048字节将被截断
post未有上限

4)缓慰难题
get能够缓存网站,post不会缓存网站

5)用项不相像
get:查询数据,post改善数据

114、发送数据是何等的?
串联化数据:key1=value1&key2=value2

115、再次回到数据是何等的?
重回的是字符串

116、跨域:jsonp?
(利用script标签跨域)
在头顶创设个script标签,
改变script标签中src

117、ajax的编写步骤?
1)创制ajax对象(要有手提式有线电话机)
2)链接服务器open(拨号)
3)监听数据重返onreadystatechange(听)
4)发送数据send(说)
5)close(忽略)(挂了)

118、json怎么取?=========?
由此串联化数据

119、什么是目的?
指标是三个总体,对外提供部分操作。||
黑盒子,看不到里面包车型客车旗帜,
能收看表面包车型大巴开关

120、什么是面向对象?
应用对象时,只关怀对象提供的效率,
不怜惜当中间细节,比如jQuery ||
接受三个事物的时候,不去管内部是
如何做的,只用好它的效用

上面是收拾出来的一些函数,方便我们的就学和使用

/**
function obj$(id)                       根据id得到对象
function val$(id)                       根据id得到对象的值
function trim(str)                      删除左边和右边空格
function ltrim(str)                     删除左边空格
function rtrim (str)                    删除右边空格
function isEmpty(str)                   字串是否有值
function equals(str1, str2)             比较两字符串是否相等
function equalsIgnoreCase(str1, str2)   忽略大小写比较两个字符串是否相等
function isChinese(str)                 判断是否中文
function isEmail(strEmail)              是否电子邮件
function isImg(str)                     是否是一个图片格式的文件jpg|jpeg|swf|gif
function isInteger(str)                 是否是一个整数
function isFloat                        是否是一个浮点数
function isPost(str)                     是否邮编(1位至6位
function isMobile(str)                  是否是手机号
function isPhone(str)                   是否是电话号码必须包含区号,可以含有分机号
function isQQ(str)                      是否合法的QQ号码          
function isIP(str)                      是否是合法的IP
function isDate(str)                     是否日期类型(例:2005-12-12)
function isIdCardNo(idNumber)           是否是合法的身份证号
**/ 
/**
 * 替换
 * @param {Object} str
 * @param {Object} oldStr
 * @param {Object} newStr
 * @return {TypeName} 
 */ 
function repalce(str, oldStr, newStr) { 
    var reg = eval_r("/" + oldStr + "/g"); 
    return str.replace(reg, newStr); 
} 

/**
 * 左边截取
 * @param {Object} str
 * @param {Object} n
 * @return {TypeName} 
 */ 
function left(str, n) { 
    if (str.length > 0) { 
        if (n > str.length) 
            n = str.length; 
        return str.substr(0, n); 
    } else { 
        return; 
    } 
} 

/**
 * 右边截取
 * @param {Object} str
 * @param {Object} n
 * @return {TypeName} 
 */ 
function right(str, n) { 
    if (str.length > 0) { 
        if (n >= str.length) 
            return str; 
        return str.substr(str.length - n, n); 
    } else { 
        return; 
    } 
} 



function strip(str) { 
    if (typeof str == 'string') 
        return str.replace(/^s+/, '').replace(/(^s*)|(s*$)/g, ''); 
} 

function stripTags(str) { 
    if (typeof str == 'string') 
        return str.replace(/</?[^>]+>/gi, '').replace(/(^s*)|(s*$)/g, ''); 
} 
/**
 * 判断某个字符的长度在s和l之间
 * @param {Object} str
 * @param {Object} s
 * @param {Object} l
 * @return {TypeName} 
 */ 
function isLen(str, s, l) { 
    str = Trim(str) 
    if (str.length > s && str.length < l) { 
        return true; 
    } else { 
        return false; 
    } 
} 

/**
 * 是否为数字
 * @param {Object} str
 * @return {TypeName} 
 */ 
function isNumber(str){ 
    if (/^d+$/.test(str)){ 
        return true; 
    }else{ 
        return false; 
    } 
} 



function isLetters(str){ 
    if (/^[A-Za-z0-9]+$/.test(str)){ 
        return true; 
    }else{ 
        return false; 
    } 
} 

function isLetter(str){ 
    if (/^[A-Za-z]+$/.test(str)){ 
        return true; 
    }else{ 
        return false; 
    } 
} 

function isUpper(str){ 
    if (/^[A-Z]+$/.test(str)){ 
        return true; 
    }else{ 
        return false; 
    } 
} 

function isLower(str){ 
    if (/^[a-z]+$/.test(str)){ 
        return true; 
    }else{ 
        return false; 
    } 
} 


/**
*根据对象的id得到对象
*id:对象的id
*/ 
function obj(id) 
{ 
    return document.getElementById(id); 
} 

/**
*根据对象的id得到对象的值
*id:对象的id
*/ 
function val(id) 
{ 
    var obj = document.getElementById(id); 
    if(obj !== null) 
    { 
        return obj.value; 
    } 
    return null; 
} 

/**
*去掉字符串的前后空格
*str:将要除去空格的字符串
*/ 
function trim(str) 
{ 
    return str.replace(/(^s*)|(s*$)/g, ''); 
} 

/**
*去掉字符串前的空格
*str:将要除去空格的字符串
*/ 
function ltrim(str) 
{ 
    return str.replace(/^s*/g,''); 
} 

/**
*去掉字符串后的空格
*str:将要除去空格的字符串
*/ 
function rtrim(str) 
{ 
    return str.replace(/s*$/,''); 
} 

/**
*字符串是否有值
*str:要检测的字符串
*/ 
function isEmpty(str) 
{ 
    if(str != null && str.length > 0) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*比较两个字符串是否相等
*str1:要比较的字符串1
*str2:要比较的字符串2
*/ 
function equals(str1, str2) 
{ 
    if(str1 == str2) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*忽略大小写比较两个字符串是否相等
*str1:要比较的字符串1
*str2:要比较的字符串2
*/ 
function equalsIgnoreCase(str1, str2) 
{ 
    if(str1.toUpperCase() == str2.toUpperCase()) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是中文
*str:要检测的字符串
*/ 
function isChinese(str) 
{ 
   var str = str.replace(/(^s*)|(s*$)/g,''); 
   if (!(/^[u4E00-uFA29]*$/.test(str) 
           && (!/^[uE7C7-uE7F3]*$/.test(str)))) 
   { 
      return false; 
   } 
   return true; 
} 

/**
*是否是Email
*str:要检测的字符串
*/ 
function isEmail(str) 
{ 
    if(/^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$/.test(str)) 
    { 
        return true 
    } 
    return false; 
} 

/**
*是否是图片格式文件
*str:要测试的文件名
*/ 
function isImg(str) 
{ 
    var objReg = new RegExp("[.]+(jpg|jpeg|swf|gif){1}quot;, "gi"); 
    if(objReg.test(str)) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是一个整数
*str:要检测的字符串
*/ 
function isInteger(str) 
{ 
    if(/^-?d+$/.test(str)) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是一个浮点数
*str:要检测的字符串
*/ 
function isFloat(str) 
{ 
    if(/^(-?d+)(.d+)?$/.test(str)) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是邮编
*str:要检测的字符串
*/ 
function isPost(str) 
{ 
    if(/^d{1,6}$/.test(str)) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是手机号码
*str:要检测的字符串
*/ 
function isMobile(str) 
{ 
    if(/^1[35]d{9}/.test(str)) 
      { 
          return true; 
      } 
    return false; 
} 

/**
*是否是电话号码
*str:要检测的字符串
*电话号码必须有区号,可以有分机号
*/ 
function isPhone(str) 
{ 
    if(/^(0[1-9]d{1,2}-)d{7,8}(-d{1,8})?/.test(str)) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是合法的QQ号码
*str:要检测的字符串
*/ 
function isQQ(str){ 
    if(/^d{5,9}$/.test(str)) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是合法的IP
*str:要检测的字符串
*/ 
function isIP(str){ 
    var reg = /^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]).(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0).(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0).(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$/; 
    if(reg.test(str)) 
    { 
        return true; 
    } 
    return false; 
} 

/**
*是否是一合法日期
*str:要检测的字符串
*/ 
function isDate(str) 
{ 
    var reg = /^((((1[6-9]|[2-9]d)d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]d|3[01]))|(((1[6-9]|[2-9]d)d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]d|30))|(((1[6-9]|[2-9]d)d{2})-0?2-(0?[1-9]|1d|2[0-8]))|(((1[6-9]|[2-9]d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$/; 
    if(reg.test(str)) 
    { 
        return true; 
    } 
    return false;    
} 

近期儿深夜就你早就学习了 JavaScript,接下去该学习如何吗?

下一步应该学学 HTML DOM 和 DHTML。

jQuery

jQuery 是一个 JavaScript 库。

jQuery 相当大地简化了 JavaScript 编制程序。

jQuery 很容易学习。

现行后生可畏度你早已学习了 JavaScript,接下去该学习怎么呢?

下一步应该学习 HTML DOM 和 DHTML。

jQuery

jQuery 是一个 JavaScript 库。

jQuery 相当的大地简化了 JavaScript 编程。

jQuery 很容易学习。

 

jQuery Mobile

jQuery Mobile 是三个为触控优化的框架,用于创设移动 web 应用程序。

jQuery 适用于具有流行的智能机和机械计算机。

jQuery Mobile 创设于 jQuery 库之上,那使其更易学习,假设你通晓 jQuery
的话。

它使用 HTML5、CSS3、JavaScript 和 AJAX
通过尽大概少的代码来形成对页面包车型大巴构造。

jQuery Mobile

jQuery Mobile 是二个为触控优化的框架,用于创建移动 web 应用程序。

jQuery 适用于具备流行的智能机和机械计算机。

jQuery Mobile 营造于 jQuery 库之上,那使其更命理术数习,假若你精晓 jQuery
的话。

它接纳 HTML5、CSS3、JavaScript 和 AJAX
通过尽大概少的代码来完毕对页面包车型大巴布局。

 

HTML DOM

HTML DOM 定义了访谈和操作 HTML 文书档案的行业内部措施。

HTML DOM 独立于阳台和言语,可被其它编制程序语言使用,例如 Java、JavaScript
和 VBscript。

HTML DOM

HTML DOM 定义了访谈和操作 HTML 文档的正统措施。

HTML DOM 独立于阳台和言语,可被其余编制程序语言使用,举个例子 Java、JavaScript
和 VBscript。

 

AJAX

AJAX = 异步 JavaScript 和 XML。

AJAX 不是风流倜傥种新的编程语言,而是意气风发种选取现成规范的新方式。

透过与服务器实行数据交换,AJAX
能够在不重复加载整个网页的气象下,对网页的某部分进行改良。

有多数用到 AJAX 的应用程序案例:天涯论坛搜狐、谷歌(Google卡塔尔国 地图、喜悦网等等。

AJAX

AJAX = 异步 JavaScript 和 XML。

AJAX 不是少年老成种新的编制程序语言,而是黄金时代种接纳现存标准的新点子。

经过与服务器进行数据交流,AJAX
可以在不重复加载整个网页的场合下,对网页的某有个别开展翻新。

有繁多选拔 AJAX 的应用程序案例:搜狐微博、Google 地图、欢悦网等等。

 

JSON

JSON:JavaScript 对象表示法(JavaScript Object Notation)。

JSON 是储存和置换文本消息的语法。相符 XML。

JSON 比 XML 更加小、越来越快,更易深入剖判。

这段时间,本身对JavaScript的上学和询问吗少,所以就借鉴的诸位大神的博文将此篇JavaScript的下结论博客写了出来,还请各位笑纳!
一…

JSON

JSON:JavaScript 对象表示法(JavaScript Object Notation)。

JSON 是积存和置换文本消息的语法。雷同 XML。

JSON 比 XML 越来越小、越来越快,更易深入剖析。

少年老成、查找HTML成分 日常,通过
JavaScript,您须求操作 HTML 成分。 1、通过 id 找到 HTML 成分2、通过标签字找到 HTML 成分…

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图