码迷,mamicode.com
首页 > 编程语言 > 详细

前端面试题之一JAVASCRIPT(理论类)

时间:2017-02-09 23:04:52      阅读:243      评论:0      收藏:0      [点我收藏+]

标签:asc   服务器   style   保存   用法   加密   work   数据   client   

一、请描述一下 cookies、sessionstorage 、localstorage 和session的区别?
(1)cookie是网站为了标示用户身份而储存在用户本地终端(client side)上的数据(通常经过加密),数据大小不能超过4k,cookie 设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭。cookie数据始终在同源的http请求中携带(即使不需要),亦会在浏览器和服务器间来回传递。
(2)sessionstorage和localstorage不会自动把数据发给服务器,仅在本地保存。sessionstorage和localstorage 虽然也有存储大小的限制,但比cookie大得多,可以达到5m或更大。localstorage 存储持久数据,浏览器关闭后数据不丢失除非主动删除数据;sessionstorage  数据在当前浏览器窗口关闭后自动删除。
(3)session:在计算机中,尤其是在网络应用中,称为“会话控制”。session 对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的 web 页之间跳转时,存储在 session 对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。当用户请求来自应用程序的 web 页时,如果该用户还没有会话,则 web 服务器将自动创建一个 session 对象。当会话过期或被放弃后,服务器将终止该会话。session 对象最常见的一个用法就是存储用户的首选项。例如,如果用户指明不喜欢查看图形,就可以将该信息存储在 session 对象中。注意:会话状态仅在支持 cookie 的浏览器中保留。

二、如何实现浏览器内多个标签页之间的通信?
websocket、sharedworker,也可以调用localstorge、cookies等本地存储方式。localstorge另一个浏览上下文里被添加、修改或删除时,它都会触发一个事件,我们通过监听事件,控制它的值来进行页面信息通信。注意quirks:safari 在无痕模式下设置localstorge值时会抛出 quotaexceedederror 的异常。

三、哈希表

散列表(hash table,也叫哈希表),是根据关键码值(key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表

给定表m,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表m为哈希(hash)表,函数f(key)为哈希(hash) 函数。

 

前端面试题之一JAVASCRIPT(理论类)

标签:asc   服务器   style   保存   用法   加密   work   数据   client   

原文地址:http://www.cnblogs.com/myclovers/p/6384090.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!