1. ajax请求的时候get 和post方式的区别?
(1)get查询字符串在url后面;post在虚拟载体里面;
(2)get有大小限制;
(3)get作为请求数据;post作为提交数据。
2. Ajax原理
(1)创建对象:
var xhr = new XMLHttpRequest();
(2)打开请求
xhr.open(‘GET’, ‘example.txt’, true);
(3)发送请求
xhr.send(); 发送请求到服务器
(4)接收响应
xhr.onreadystatechange =function( ){ }
1)当readystate值从一个值变为另一个值时,都会触发readystatechange事件。
2)当readystate==4时,表示已经接收到全部响应数据。
3)当status ==200时,表示服务器成功返回页面和数据。
4)如果(2)和(3)内容同时满足,则可以通过xhr.responseText,获得服务器返回的内容。
3. Cookie在客户机上是如何存储的
1. Cookies就是服务器暂存放在你的电脑里的文本文件,好让服务器用来辨认你的计算机。
2. 当你在浏览网站的时候,Web服务器会先送一小小资料放在你的计算机上,Cookies 会帮你在网站上所打的文字或是一些选择都记录下来。
3. 当下次你再访问同一个网站,Web服务器会先看看有没有它上次留下的Cookies资料,有的话,就会依据Cookie里的内容来判断使用者,送出特定的网页内容给你。
4. JavaScript中浅拷贝和深拷贝的区别
1. 浅拷贝:拷贝后,修改拷贝后的对象,会影响拷贝前的对象。
2. 深拷贝:拷贝后,修改拷贝后的对象,不会影响拷贝前的对象。
总结:浅拷贝是拷贝一层,深层次的对象级别就拷贝引用。深拷贝是拷贝多层,每一个级别的数据都会拷贝出来。
5. JavaScript的作用域链?
1. 作用域链的作用:
是保证对执行环境有权访问的所有变量和函数有序访问,通过作用域链,我们可以访问到外层环境的变量和函数。
2. 作用域链的本质:
是一个指向变量对象的指针列表。变量对象是一个包含了执行环境中所有变量和函数的对象。作用域链的前端始终都是当前执行上下文的变量对象。全局执行上下文的变量对象(也就是全局对象)始终是作用域链的最后一个对象。
3. 当我们查找一个变量时,如果当前执行环境中没有找到,我们可以沿着作用域链向后查找。 4. 作用域链的创建过程跟执行上下文的建立有关。