js面试试题总结一
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js面试试题总结一相关的知识,希望对你有一定的参考价值。
数组去重
function getSingle (arr)
{
var res = [];
var jj = {};
for (i = 0; i < arr.length; i++)
{
if(!jj[arr[i]])
{
res.push(arr[i]);
jj[arr[i]] = 1;
}
}
return res;
}
var result = getSingle([111,23,32,23,44,33,22,33]);
console.log(result);
闭包的理解:
funtion aa ()
{
var name = "hello";
function bb ()
{
console.log(name);
}
return bb;
}
var getName = aa(); //getName 是一个闭包
getName();
闭包:函数嵌套函数,函数内部可以引用外部的函数和变量。闭包的使用防止全局变量被污染。但由于闭包的参数和变量不会被回收,会增大内存使用量。
HTTP协议
Http协议定义了很多与服务器交互的方法,最基本的有4种,分别是GET,POST,PUT,DELETE. 一个URL地址用于描述一个网络上的资源,而HTTP中的GET, POST, PUT, DELETE就对应着对这个资源的查,改,增,删4个操作。GET一般用于获取/查询资源信息,而POST一般用于更新资源信息.
1. GET提交的数据会放在URL之后,以?分割URL和传输数据,参数之间以&相连,如EditPosts.aspx?name=test1&id=123456. POST方法是把提交的数据放在HTTP包的Body中.
2. GET提交的数据大小有限制(因为浏览器对URL的长度有限制),而POST方法提交的数据没有限制.
HTTP状态码
1XX 提示信息 - 表示请求已被成功接收,继续处理
2XX 成功 - 表示请求已被成功接收,理解,接受
3XX 重定向 - 要完成请求必须进行更进一步的处理
4XX 客户端错误 - 请求有语法错误或请求无法实现
5XX 服务器端错误 - 服务器未能实现合法的请求
常见code:
302 Found 重定向,新的URL会在response 中的Location中返回,浏览器将会自动使用新的URL发出新的Request
400 Bad Request 客户端请求与语法错误,不能被服务器所理解
403 Forbidden 服务器收到请求,但是拒绝提供服务
404 Not Found
500 Internal Server Error 服务器发生了不可预期的错误
503 Server Unavailable 服务器当前不能处理客户端的请求,一段时间后可能恢复正常
以上是关于js面试试题总结一的主要内容,如果未能解决你的问题,请参考以下文章