文档章节

web前端面试题JavaScript第一弹,个人整理部分面试题汇总

小熊一乐
 小熊一乐
发布于 2017/07/27 09:17
字数 1224
阅读 3
收藏 0

以下内容仅供参考,成年人不讲对错只讲利弊

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" 

© 著作权归作者所有

小熊一乐
粉丝 0
博文 23
码字总数 42672
作品 0
私信 提问
撩课-每天刷Web面试题(前10天汇总)

原文https://mp.weixin.qq.com/s/euBfmBly7GnnYsk6Kgz2Yw 前言 后台很多小伙伴给我发私信说公众号上面试题刷不了了,因为之前系统迁移导致数据丢失。 目前在撩课官网(itlike.com)上三大学科每...

大灰狼的小绵羊哥哥
2018/11/29
0
0
2018 前端面试准备

前端面试常见问题按知识点分类整理 前端面试常考问题整理,按模块知识点分类,持续完善中... Front-end-Developer-Questions by Modules and knowledge 前端面试经典问题:CSS 中居中的几种方...

掘金官方
2017/12/14
0
0
前端相关整理

整理一下最近在网上收集的前端面试相关资料,包括预备知识、书籍、面试考点、面经等。前端方面资料其实太多太多,就光从知乎、前端乱炖、w3cplus 等网站就能找到很多,所以针对细节不发散,仅...

Seas0n_
2016/03/01
106
0
jQuery

前端基础进阶:全方位详细图解面向对象、构造函数、原型与原型链 这是一篇非常适合新手理解关于面向对象一切的文章,解答了为什么我们会使用构造函数与原型,构造函数与原型的本质以及 new ...

掘金官方
2018/01/08
0
0
前端面试题关于JavaScript 这些你都会吗?

昨天我们一起分享了关于html和css的面试题《前端面试题之Html和CSS》,今天我们来分享关于javascript有关的面试题。我面试的时候最害怕面试官问我js了,因为我真心不擅长这个。不过我在努力的...

VIP_web
2018/06/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Android双向绑定原理简述

Android双向绑定原理简述 双向绑定涉及两个部分,即将业务状态的变化传递给UI,以及将用户输入信息传递给业务模型。 首先我们来看业务状态是如何传递给UI的。开启dataBinding后,编译器为布局...

tommwq
今天
4
0
Spring系列教程八: Spring实现事务的两种方式

一、 Spring事务概念: 事务是一系列的动作,它们综合在一起才是一个完整的工作单元,这些动作必须全部完成,如果有一个失败的话,那么事务就会回滚到最开始的状态,仿佛什么都没发生过一样。...

我叫小糖主
今天
8
0
CentOS 的基本使用

1. 使用 sudo 命令, 可以以 root 身份执行命令, 必须要在 /etc/sudoers 中定义普通用户 2. 设置 阿里云 yum 镜像, 参考 https://opsx.alibaba.com/mirror # 备份mv /etc/yum.repos.d/CentO...

北漂的我
昨天
5
0
Proxmox VE技巧 移除PVE “没有有效订阅” 的弹窗提示

登陆的时候提示没有有效的订阅You do not have a valid subscription for this server. Please visit www.proxmox.com to get a list of available options. 用的是免费版的,所以每次都提示......

以谁为师
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部