正则表达式
\d
可匹配一个数字\w
可匹配一个字母\s
可匹配一个空格(包括tab键).
可以匹配一个任意字符
1、在匹配边长的字符,正则表达式中,用:
表示任意个字符+
表示至少有1个字符?
表示0个或1个字符(即可有可无){n}
表示匹配n个字符{n,m}
表示匹配n
-m
个字符i
表示对大小写不敏感
举个例子:\d{3}\s+\d{3,8}
1、\d{3}
表示匹配3个数字,例如010;
2、\s
可以匹配一个空格(也包括Tab等空白符),所以\s+
表示至少有一个空格,例如匹配 ,\t\t
等;
3、\d{3,8}
表示3-8个数字,例如1234567。
上面匹配的是以3个数字开头,用一个空格隔开,后接3到8位数的 一个区的短号。 比如010 345678
2、进阶(更精确的匹配)
使用[]
可以更精确的匹配
[0-9a-zA-Z\_]
可以匹配一个 数字、字母或者下划线;
[0-9a-zA-Z\_]
可以匹配 至少 由一个数字、字母或者下划线组成的字符串,比如a100,0_Z,js2015等等;``可以没有其中的一两项
[a-zA-Z\_\$][0-9a-zA-Z\_\$]
可以匹配由字母或下划线、$
开头,后接任意个由一个数字、字母或者下划线、$
组成的字符串,也就是JavaScript
允许的变量名;
[a-zA-Z\_\$][0-9a-zA-Z\_\$]{0, 19}
更精确地限制了变量的长度是1-20个字符(前面1个字符+后面最多19个字符)。A|B
可以匹配A或B,所以(J|j)ava(S|s)cript
可以匹配JavaScript、Javascript、javaScript
或者javascript
^
表示行的开头,^\d
表示只能以数字开头$
表示行的结束,\w$
表示只能以字母结束
以下特殊字符需要转义
. ? + $ ^ [ ] ( ) | \ / - , ;
3、实用正则
验证EMail正则表达式:
/^([a-zA-Z0-9_\-\.])+\@([a-zA-Z0-9_\-\.])+\.([A-Za-z]{2,4})$/
4、浏览器
window
变量充当全局作用域,还表示浏览器窗口。
window
对象有 innerwidth
和 innerheight
两个属性,可以获取浏览器的内部宽和内部高度。
【注】内部宽高指的是出去菜单栏,工具栏,边框等占位元素后,用于显示网页的净宽高。
在浏览器的console
控制台输入:
console.log(window inner size + window.innerwidth + x + window.innerheight);
输出: window inner size: 1440 x 790 // 这是我的13.3寸的macbook air
outerwidth and outerheight
显示的是整个屏幕的大小,也就是你电脑显示屏的完整大小。(能显示东西的)
navigator
表示浏览器的信息,常用属性
navigator.appName
浏览器名称;navigator.appVersion
: 浏览器版本;navigator.language
浏览器设置的语言;navigator.platform
操作系统类型;navigator.userAgent
浏览器设置的 User-Agent
字符串
screen
对象表示屏幕的信息,常用属性有:
screen.width
: 屏幕宽度,以像素为单位screen.height
屏幕高度,以像素微单screen.colorDepth
返回颜色数,如 8、 16、 24
location
对象表示当前页面的URL信息。例如,一个完整的URL:
http://www.example.com:8080/path/index.html?a=1&b=2#TOP
location.protocol;
// http location.host;
// www.example.com location.port;
// 8080 location.pathname;
// /path/index.html location.search;
// ?a=1&b=2 location.hash;
// TOP
重新加载一个页面 locaction.assign()
重新加载当前页面 location.reload()
让网页弹出一个对话框 confirm('你刚才点了我吗?')
5、操作文件
对文件的操作只有一种,那就是`,而且表单中,
method 必须得是
post ,并且
enctype必须得是
multipart/form-data`
为减轻服务器的负载,用js在用户提交表单时,对用户上传的文件类型进行判断:
var f = document.getElementById(testupload);
var filename = f.value;
if (!filename || !(filename.endsWith(.jpg)) || !(filename.endsWith(png)) || !(filename.endsWith(gif)) {
alert(unsupported file type!);
return false;
}
File API:
javascript对用户上传的文件的操作权限非常有限, 尤其是无法读取文件的内容,HTML5的file api提供了File 和 FileReader两个主要对象
评论 (0)