json
json是类似于javascript对象的一种数据格式;
json格式的数据:
{"name":'tom',
"age":18}
json数据格式的属性名称需要用双引号引起来,用单引号或者不用引号会导致读取数据错误。
json的另外一个数据格式是数组;
例如:['tom',18,'programmer'] ;
中括号是对象,大括号是数组;
对象和数组都是可以相互嵌套的;
info : 信息;
ajax
ajax技术的原理是实例化;
使用此对象与后台通信。ajax通信的过程不会影响后续javascript的执行,从而实现异步;
ajax可以实现局部刷新,也叫做无刷新,无刷新指的是整个页面不刷新,只是局部刷新,ajax可以自己发送http请求;
$.ajax使用方法
常用参数:
1、url 请求地址
2、type 请求方式,默认是'GET',常用的还有'POST'
3、dataType 设置返回的数据格式,常用的是'json'格式,也可以设置为'html'
4、data 设置发送给服务器的数据
5、success 设置请求成功后的回调函数
6、error 设置请求失败后的回调函数
7、async 设置是否异步,默认值是'true',表示异步;
ajax,是前端与后台连接的地方;
表单文件中get与post的区别?
-
get
URL 改变,在URL 里显示 HTML Form 参数的 name/value 值。
只适合有少量参数的 HTML Form,因为 URL 长度有字符限制,不能无限长。
涉及安全性的信息,比如用户密码,不能用 get,因为会在 URL 上显示,不安全。
post
URL 不改变,不在 URL 里显示 HTML Form 的数据。
Form 提交的信息没有长度限制。
涉及安全性的信息,如用户密码,应采用 post 方式。
jsonp
ajax只能请求同一个域下的数据或资源,有时候需要跨域请求数据,就需要用到jsonp技术,jsonp可以跨域请求数据,它的原理主要是利用了script标签可以跨域链接资源的特性。
页面上定义一个函数,引用一个外部js文件,外部js文件的地址可以是不同域的地址,外部js文件;
例如:aa({"name":"tom","age":18});
外部js文件调用页面上定义的函数,通过参数把数据传进去。
正则表达式
什么是正则表达式?
字符串匹配规则;
正则表达式的写法:
1.var re=new RegExp('规则', '可选参数'); 面向对象的方法;
2.var re=/规则/参数;
规则中的字符
1普通字符匹配:
例如:/a/ 匹配字符 ‘a’,/a,b/ 匹配字符 ‘a,b’
2.转义字符匹配:
\d 匹配一个数字,即0-9
\D 匹配一个非数字,即除了0-9
\w 匹配一个单词字符(字母、数字、下划线)
\W 匹配任何非单词字符。等价于[^A-Za-z0-9_]
\s 匹配一个空白符
\S 匹配一个非空白符
\b 匹配单词边界
\B 匹配非单词边界
. 匹配一个任意字符,除了换行符‘\n’和回车符‘\r’
\1 重复子项;
正则匹配的是字符串用的; 字符串里有一个都返回true;任意一个或者范围
1.[abc123] : 匹配‘abc123’中的任意一个字符;
2.[a-z0-9] : 匹配a到z或者0到9中的任意一个字符;
限制开头结尾
1.^ 以紧挨的元素开头;
2.$ 以紧挨的元素结尾;
量词:对左边的匹配字符定义个数
1.? 出现零次或一次(最多出现一次)
2.+ 出现一次或多次(至少出现一次)
3.* 出现零次或多次(任意次)
{n} 出现n次
{n,m} 出现n到m次
{n,} 至少出现n次
修饰参数:
g: global,全文搜索,默认搜索到第一个结果接停止
i: ingore case,忽略大小写,默认大小写敏感
m: multiple lines,多行搜索(更改^ 和$的含义,使它们分别在任意一行对待行首和行尾匹配,而
不仅仅在整个字符串的开头和结尾匹配);
常用函数
1、test 用法:正则.test(字符串) 匹配成功,就返回真,否则就返回假;
2、search 用法:字符串.search(正则) 匹配成功,返回位置,否则返回-1;(相当于indexof 索引)
3、match 用法: 字符串.match(正则);匹配成功,就返回匹配成功的数组,否则就返回null;
4、replace 用法:字符串.replace(正则,新的字符串) 匹配成功的字符去替换新的字符(替换函数);