前端面试题
1、说说你对 this 的理解?
答、this 是一个关键字,它代表函数运行时,自动生成的一个内部对象,只能在函数
内部使用。
1.作为纯粹的函数调用 this 指向全局对象
2.作为对象的方法调用 this 指向调用对象
3.作为构造函数被调用 this 指向新的对象(new 会改变 this 的指向)
4.apply 调用 this 指向 apply 方法的第一个参数
2、介绍一下 JS 有哪些内置对象。
Object 是 JavaScript 中所有对象的父对象
数据封装类对象:Object、Array、Boolean、Number、String
其他对象:Function、Argument、Math、Date、RegExp、Error
3、表单验证传输的什么数据?明文还是暗文==加密?如何加密?是每一次传
输数据,都是加密之后才传输吗?
答、概述:
GET 是从服务器上请求数据,POST 是发送数据到服务器。事实上,GET 方法是把数
据参数队列(query string)加到一个 URL 上,值和表单是一一对应的。比如说,
name=John。在队列里,值和表单用一个&符号分开,空格用+号替换,特殊的符号转换
成十六进制的代码。因为这一队列在 URL 里边,这样队列的参数就能看得到,可以被记录
下来,或更改。通常 GET 方法还限制字符的大小(大概是 256 字节 )。
事实上 POST 方法可以没有时间限制的传递数据到服务器,用户在浏览器端是看不到
这一过程的,所以 POST 方法比较适合用于发送一个保密的(比如信用 卡号)或者比较
大量的数据到服务器。
区别:
Post 是允许传输大量数据的方法,而 Get 方法会将所要传输的数据附在网址后面,然
后一起送达服务器,因此传送的数据量就会受到限制,但是执行效率却比 Post 方法好。
总结:
1、get 方式的安全性较 Post 方式要差些,包含机密信息的话,建议用 Post 数据提
交方式;
2、在做数据查询时,建议用 Get 方式;而在做数据添加、修改或删除时,建议用
Post 方式;
所以:
表达如果是向服务器传输数据(如帐号密码等)都是加密数据(post), 如果只是单单想
要从服务器获得数据或者传输的数据并不重要, 可以直接使用明文方式传输( get )