[WEB面试题] web前端面试题JavaScript第一弹,个人整理部分面试题汇总
以下内容仅供参考,成年人不讲对错只讲利弊
1.什么是JavaScript原型链?如何理解
JavaScript中的每个对象都有一个prototype属性,我们称之为原型
原型的值是一个对象有自己的原型,这样就串联起来了一条原型链,原型链的链头是object,它的prototype比较特殊,值为null。
原型链的作用是用于对象继承,函数A的原型属性(prototype property)是一个对象,当这个函数被用作构造函数来创建实例时,该函数的原型属性将被作为原型赋值给所有对象实例,比如我们新建一个数组,数组的方法便从数组的原型上继承而来。
当访问对象的一个属性时, 首先查找对象本身, 找到则返回; 若未找到, 则继续查找其原型对象的属性(如果还找不到实际上还会沿着原型链向上查找, 直至到根). 只要没有被覆盖的话, 对象原型的属性就能在所有的实例中找到,若整个原型链未找到则返回undefined
2.JavaScript中typeof返回的数据类型有哪些?
Object number function boolean underfind
3.强制类型转换和隐式类型转换举例
强制(parseInt,parseFloat,number)
隐式(== ===)
4.数组函数方法split(), join() ,pop(), push() ,unshift() ,shift()分别是什么
split()是切割成数组的形式
join是将数组转换成字符串
Push()尾部添加
pop()尾部删除
Unshift()头部添加
shift()头部删除
5.闭包是什么,有什么特性?介绍你对闭包的理解?
“闭包就是能够读取其他函数内部变量的函数”
闭包,官方对闭包的解释是:一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。闭包的特点:
1. 作为一个函数变量的一个引用,当函数返回时,其处于激活状态。
2. 一个闭包就是当一个函数返回时,一个没有释放资源的栈区。
简单的说,Javascript允许使用内部函数---即函数定义和函数表达式位于另一个函数的函数体内。而且,这些内部函数可以访问它们所在的外部函数中声明的所有局部变量、参数和声明的其他内部函数。当其中一个这样的内部函数在包含它们的外部函数之外被调用时,就会形成闭包。
6.什么是对象?
JavaScript 中的所有事物都是对象:字符串、数字、数组、日期,等等。
在 JavaScript 中,对象是拥有属性和方法的数据
在 JavaScript 中,对象是数据(变量),拥有属性和方法。
当您像这样声明一个 JavaScript 变量时:
var txt = "Hello";
您实际上已经创建了一个 JavaScript 字符串对象。
7.HTTP完整的请求是怎么样的?
1.域名解析
2.发出TCP三次握手 “TCP 为什么需要3次握手?”
3.建立TCP连接后发起http请求
4.服务器端响应http请求,浏览器得到html代码
5. 浏览器解析html代码,并请求html代码中的资源
6.浏览器对页面进行渲染呈现给用户
“第7点内容取材于 “雷纳科斯的博客” 博客整理而来,更多细节请http://linux5588.blog.51cto.com/65280/1351007”
8.ajax序列化有什么用?如何序列化?
序列化元素 serialize()方法 它能够将DOM元素内容序列化为字符串
序列化的值可在生成AJax请求时用于URL查询字符串中
当我们使用ajax时,常常需要拼装input数据以键值对(Key / Value)的形式发送到服务器,用jquery的serialize方法可以轻松的完成这个工作,使用这个方法可以将表单序列化为键值对(key1=value1&key2=value2…)后提交
1.//serialize()方法
$(selector).serialize()
//创建以标准URL编码表示的文本字符串,它的操作对象是代表表单元素集合的JQuery对象;
// 把复选框和单选框的值序列化为字符串形式,只会将选中的值序列化
$(':checkbox, :radio').serialize()2.//serializeArray()方法
//该方法不是返回字符串,而是将dom元素序列化后,返回JSON格式的数据
<div>
<input type="radio" name="test" value="A">
</div>
var fields = $(':radio').serializeArray();
console.log(fields);3.//$.param()方法
//它是serialize()方法的核心,用来对一个数组或者对象按照key / value进行序列化
var obj = {a:1, b:2, c:3};
var k = $.param(obj);
console.log(k);
// 输出结果为 "a=1&b=2&c=3"
[WEB面试题] web前端面试题JavaScript第一弹,个人整理部分面试题汇总的更多相关文章
- javascript第一弹——对象
一. 什么是对象 对象是包含一组变量(称为属性)和函数(称为方法)的集合的实例. javascript中所有事物都是对象 javascript有很多内建对象 javascript允许自定义对象 对象只 ...
- for in 和 for i 十月 javascript 第一弹 记录
for in 里面的 i 不仅有 数字还有这些鬼
- 前端面试题 之 JavaScript
昨天我们一起分享了关于html和css的面试题<前端面试题之Html和CSS>,今天我们来分享关于javascript有关的面试题.我面试的时候最害怕面试官问我js了,因为我真心不擅长这个 ...
- 【web前端面试题整理02】前端面试题第二弹袭来,接招!
前言 今天本来准备先了解下node.js的,但是,看看我们一个小时前与一个小时后的差距: 既然如此,我们继续来搜集我们的前端面试题大业吧!!! 特别感谢玉面小肥鱼提供哟,@玉面小飞鱼 题目一览 Jav ...
- 2016最全的web前端面试题及答案整理
面试web前端开发,不管是笔试还是面试,都会涉及到各种专业技术问题,今天小编整理了一些常见的web前端面试题及答案,希望对大家有所帮助. 1.常用那几种浏览器测试?有哪些内核(Layout Engin ...
- 【重点--web前端面试题总结】
前端面试题总结 HTML&CSS: 对Web标准的理解.浏览器内核差异.兼容性.hack.CSS基本功:布局.盒子模型.选择器优先级及使用.HTML5.CSS3.移动端适应. JavaScri ...
- web前端面试题库
web前端面试题及答案 1.常用那几种浏览器测试?有哪些内核(Layout Engine)? 答: (Q1) 浏览器:IE,Chrome,FireFox,Safari,Opera. (Q2) ...
- 第136天:Web前端面试题总结(理论)
Web前端面试题总结 HTML+CSS理论知识 1.讲讲输入完网址按下回车,到看到网页这个过程中发生了什么 a. 域名解析 b. 发起TCP的3次握手 c. 建立TCP连接后发起http请求 d. 服 ...
- 金三银四,磨砺锋芒;剑指大厂,扬帆起航(2020年最全大厂WEB前端面试题精选)上
金三银四,磨砺锋芒:剑指大厂,扬帆起航(2020年最全大厂WEB前端面试题精选)上 引言 元旦匆匆而过,2020年的春节又接踵而来,大家除了忙的提着裤子加班.年底冲冲冲外,还有着对于明年的迷茫和期待! ...
随机推荐
- hexo安装总结
博客原文地址:Claiyre的个人博客 如需转载,请在文章开头注明原文地址 hexo真心是一个不错的东西呢,安装简单(然而对博主来说并不是这样,伤心脸),主题样式简洁优雅,还有多种选择. 流程如下 安 ...
- 在Ubuntu中增加root用户登录
一:增加root用户登录 1.打开终端,输入:sudo gedit /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf 2.在弹出的编辑框里输入:gree ...
- absolute
在需要用到小图标时,可以使用position:absolute,它具有消除float和位置不变特性.使用absolute可以浮现在同级元素的上方.用margin进行精确定位即可,也不必使用top,le ...
- linux文件系统底层原理
Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux 用户和程序看到的文件.目录.软连接及文件保护信息等都存储在其中. 底层原理图: 在讲解各个 ...
- 为什么程序员老在改 Bug,就不能一次改好吗?
程序员的日常三件事:写Bug.改Bug.背锅.连程序员都自我调侃道,为什么每天都在加班?因为我的眼里常含Bug. 但是真的有这么多Bug要改吗?就不能一次改完吗? 程序员听这问题后要拍键盘了,还!真! ...
- TapTap推广统计逻辑
当我们在Taptap上访问某款游戏时,比如https://www.taptap.com/app/34762,taptap会记录下这次访问,它是怎么做的呢. 首先,用记事本打开这个网址,在head部分看 ...
- android IPC 机制 (开发艺术探索)
一.IPC 机制介绍 IPC是Inter-Process Communication的缩写,含义就是进程间通信或者跨进程通信,是指两个进程之间进行数据交换的过程.那么什么是进程,什么是线程,进程和线程 ...
- Java之集合(十四)Hashtable
转载请注明源出处:http://www.cnblogs.com/lighten/p/7426522.html 1.前言 HashTable这个类很奇特,其继承了Dictionary这个没有任何具体实现 ...
- java调用存储过程、存储函数
需要用到的接口 接口 CallableStatement JDK文档对改接口的说明: public interface CallableStatement extends PreparedStatem ...
- Spring Security构建Rest服务-1400-授权
安全分为 认证和授权,前边讲的都是认证,现在说授权. 前端业务系统的权限简单些,一般只区分是否登录,复杂点的还会区分 VIP用户等简单的角色,权限规则基本不变. 后台系统比较复杂,角色众多,权限随着业 ...