前端笔试(一)

本文探讨了JSON和JSONP在前端笔试中的差异。JSON是一种数据交换格式,而JSONP主要用于解决跨域问题。在移动端,页面存在可见视口和布局视口,它们分别对应于用户可见的部分和网页的实际大小,通过调整视口可以影响用户的浏览体验。
摘要由CSDN通过智能技术生成
阿里
AJAX跨域
设置 async:true即异步执行,设置async:false即同步执行
jquery中ajax处理跨域的三大方式   http://www.jb51.net/article/77470.htm
ajax本身不可以跨域,遇到跨域,用JSONP,即添加dataType:'jsonp'     http://www.cnblogs.com/sunxucool/p/3433992.html

比较一下json与jsonp格式的区别:

json格式:
{
    "message":"获取成功",
    "state":"1",
    "result":{"name":"工作组1","id":1,"description":"11"}
}
jsonp格式:
callback({
   
" message ": " 获取成功 " ,
   
" state ": " 1 " ,
   
" result ":{ " name ": " 工作组1 ", " id ": 1, " description ": " 11 " }
})

jsonp比json多了个callback
jsonp方法是一种非官方方法,只支持GET方式,不如POST方式安全。即使使用jQuery的jsonp方法,type设为POST,也会自动变为GET
官方方法:通过设置Access-Control-Allow-Origin来实现跨域访问        http://blog.csdn.net/fdipzone/article/details/46390573/  

ajax用JSON来传数据,靠JSONP来跨域   http://kb.cnblogs.com/page/139725/
JSON是一种数据交换格式,描述信息的格式
JSONP是一种非官方跨域数据交互协议,信息传递双方约定的方法
凡是拥有”src”这个属性的标签都拥有跨域的能力,比如<script>、<img>、<iframe>

如何终止正在在发送的ajax请求   http://www.cnblogs.com/siqi/archive/2012/12/02/2798093.html

跨域是指html文件所在的服务器与ajax请求的服务器是不同的ip+port

meta viewport

主要参数有下面几个:
maximum-scale:用户可以缩放的最大值
minimum-scale:用户可以缩放的最小值
initial-scale:viewport的默认缩放大小
width:固定viewport的宽度
height:固定viewport的高度
user-scalable:是否允许用户缩放

移动端和桌面端不一样,它有2个视口(viewport):可见视口(visual viewport)和 布局视口(layout viewport).

关于2者的区别,stack overflow有这样的解释:

想象下现在有一张不会改变尺寸和形状的大的图片,你手里拿着一个中空的框子(想象下砸空你手机的屏幕),透过它你可以看到这张图片,并且这个框框的周围是用不透明的材料做成的,你只能通过中间的洞去看这张图片。你可以移动这个框子,靠近自己的眼睛的话可以看到更多的图片区域,也可以使它远离自己的眼睛,从而只看到这张图片的一部分小区域。

那张不可改变形状和尺寸的图片=布局视口(layout viewport)

你手中的中空的框子=可见视口(visual viewport)

也就是说我们在移动端用手指来缩放屏幕,其实改变的是可见视口(visual viewport)的尺寸,而布局视口(layout viewport)总是保持不变。

sort
数组去重 indexOf
二分法

简明扼要,禁用new操作,this不可变,没有arguments对象

搜狗
浏览器的同源策略   http://www.cnblogs.com/net2012/p/3481993.html
同源策略规定:不同域的客户端脚本在没有明确授权的情况下,不能读写对方的资源
同域要求两个站点同协议、同域名、同端口
客户端脚本指JS、ActionScript(Flash的脚本语言)、JS与ActionScript都遵循的ECMAScript脚本标准
HTTP请求头里的Referer(表示请求来源)只可读
同源策略中的资源指Web客户端的资源
window.postMessage功能是允许程序员跨域在两个窗口/frames间发送数据信息。类似AJAX,但是在两个客户端之间通信
js设置document.domain实现跨域的注意点分析   http://www.3lian.com/edu/2015/05-22/215443.html


页面跳转
window.location.assign和window.location.href区别  https://blog.tanteng.me/2015/06/window-location-assign-href/
window.location.assign(url)和window.location.href=url都是实现跳转到网页,但assign会添加记录到浏览历史,点击后退可以返回之前页面
location.assign 与 location.replace的区别    http://blog.sina.com.cn/s/blog_694c144f01016e15.html
location.replace(url)通过加载URL指定的文档替换当前文档,替换当前窗口页面,前后两个页面共用一个窗口,没有后退返回上一页
window.location和window.open的区别
window.location="url"跳转后没有后退功能
window.open(url)要新的窗口打开连接

CSS Display(显示) 与 Visibility(可见性)   http://www.runoob.com/css/css-display-visibility.html
visibility:hidden 隐藏的元素仍需占据未隐藏前一样的空间
display:none 隐藏的元素原来占用的空间从页面布局中消失

Form表单标签的Enctype属性的作用及应用示例介绍   http://www.jb51.net/web/165444.html
Enctype是指定将数据回发到服务器时浏览器使用的编码类型
application/x-www-form-urlencoded: 在发送前编码所有字符(默认)。这是标准的编码格式。 不能用于文件上传
multipart/form-data: 不对字符编码,在使用包含文件上传控件的表单时,必须使用该值。 能完整的传递文件数据,是上传二进制数据上去
text/plain: 窗体数据以纯文本形式进行编码,其中不含任何控件或格式字符。


 
避免表单重复提交与等待页面   http://www.jb51.net/article/41825.htm
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值