前端面试之Javascript
1,JS基本的数据类型和引用类型:
(1)基本数据类型:number,string,null,undefined,symbol--栈;
(2)引用数据类型:object,array,function--堆;
两种数据类型存储位置不同;
1),原始数据类型是直接存储在栈中的简单数据段,占据空间小,大小固定,属于被频繁使用数据。
2),引用数据类型存储在堆中的对象,占据空间大,大小不固定,如果存储在栈中,将会影响程序运行的性能。
3),引用数据类型在栈中存储了指针,该指针指向堆中该实体的起止地址。
4),当解释器寻找引用值时,会首先检索其在栈中的地址,取得地址后从堆中获得实体。
2,介绍JS的内置对象:
1),数据封装类对象:Object,String,Number,Boolean,Array.
2),其他对象:Function,Data,Math,Arguments,RegExp,Error.
3),Es6新增对象:Promise,Proxy,Map,Set,Symbol,Reflect.
3,几条Javascript的基本规范:
1),变量和函数在使用前要声明;
2),语句结束后添加分号;
3),代码段使用{}包裹;
4),以大写字母开头定义构造函数,以全大写定义常量;
5),用{}和【】声明对象和数组;
6),使用===和!==来比较true和false或者数字值;
4,eval是做什么的?
1),他的功能是把对应的字符串解析成JS代码并运行;
2),他不安全,而且非常耗能(执行两次,一次解析成JS代码,一次执行)
5,对闭包的理解:
闭包是指有权访问另一个函数作用域中变量的函数,创建闭包的最常见的方法就是在一个函数里创建另一个函数,通过另一个函数访问这个函数的局部变量,利用闭包可以突破作用域链,将函数内部的变量和方法传递到外部。
必报的特性:函数内嵌套函数,内部函数可以引用外部的参数和变量;参数和变量不会被垃圾回收机制回收。
6,HTTP状态码:
100:继续一般在发送post请求时,已发送了HTTP header之后服务端将返回此信息,表示确认,之后发送具体参数信息。
200:OK 正常返回信息。
400:服务器无法理解请求的格式,客户端不应当尝试再次使用相同的内容发起请求。
404:找不到如何与url相匹配的资源。
500:最常见的服务器端错误。
503:服务器端暂时无法处理请求。
7,描述浏览器渲染的过程,DOM书和渲染树的区别:
浏览器渲染过程:
1),解析HTML构建DOM,并行请求css,image,js。
2),css文件下载完成,开始构建cssom(css树)。
3),cssom构建结束后,和DOM一起生成Render Tree(渲染树)。
4),布局(layout):计算出每个节点在屏幕中的位置。
5),显示:通过显卡把页面画到屏幕上。
前端面试之Javascript的更多相关文章
- 前端面试之JavaScript的基本数据类型!
前端面试之JavaScript的基本数据类型! JS的基本数据类型 数字 字符串 布尔值 JavaScript中有两个特殊的原始值: null (空) 和undefined (未定义), , 它们不是 ...
- 前端面试之JavaScript中数组的方法!【残缺版!!】
前端面试之JavaScript中数组常用的方法 7 join Array.join()方法将数组中所有元素都转化为字符串并连接在-起,返回最后生成的字 符串.可以指定一个可选的字符串在生成的字符串中来 ...
- 前端面试之JavaScript中的闭包!
前端面试之JavaScript中的闭包! 闭包 闭包( closure )指有权访问另一个函数作用域中变量的函数. ----- JavaScript 高级程序设计 闭包其实可以理解为是一个函数 简单理 ...
- 前端面试回顾---javascript的面向对象
转:https://segmentfault.com/a/1190000011061136 前言 前一阵面试,过程中发现问到一些很基础的问题时候,自己并不能很流畅的回答出来.或者遇到一些基础知识的应用 ...
- 前端面试之JavaScript中this的指向【待完善!】
JavaScript中this的指向问题! 另一个特殊的对象是 this,它在标准函数和箭头函数中有不同的行为. 在标准函数中, this 引用的是把函数当成方法调用的上下文对象,这时候通常称其为 t ...
- 前端面试整理——javascript算法和测试题
(1)算法: 1.斐波那契数列:1.1.2.3.5.8.13.21.输入n,输出数列中第n位数的值. 方案一: function fn(n){ var num1 = 1, num2= 1, num3 ...
- web前端面试第一次[javascript函数和方法的区别]
//函数 function f1(){ console.log("我是函数"); } //调用函数 f1(); //创建一个空对象 var obj = {} //把函数定义到对象里 ...
- 问得最多的十个JavaScript前端面试问题
我知道有很多人不同意这种类型的面试.其实不管你喜不喜欢,你都得接受.尤其当你是自学的,而且要申请第一份工作时. 我估计很多有人其它方法来证明他自己,像Github/ 项目地址可能是非常理想的证明方 ...
- web前端面试试题总结---javascript篇
JavaScript 介绍js的基本数据类型. Undefined.Null.Boolean.Number.String. ECMAScript 2015 新增:Symbol(创建后独一无二且不可变的 ...
随机推荐
- Vue 错误记录:Cannot read property 'beforeRouteEnter' of undefined
点击某路由链接,页面提示: Cannot read property 'beforeRouteEnter' of undefined 查看代码并无手写beforeRouterEnter设置, 把页面内 ...
- mysql 8126
注意: 1) 修改后的innodb_file_format格式, 只影响后续创建的表. 也就是后续创建的表,可以支持把row_format设为dynamic,之前创建的表仍然会报错 2) SET GL ...
- http摘要认证
摘要认证步骤: 1. 客户端访问一个受http摘要认证保护的资源. 2. 服务器返回401状态以及nonce等信息,要求客户端进行认证. HTTP/1.1 401 Unauthor ...
- Log4j配置发邮件功能
# 发送日志到指定邮件log4j.appender.mail=org.apache.log4j.net.SMTPAppenderlog4j.appender.mail.Threshold=DEBUGl ...
- 招聘IT图书兼职作者(长期兼职)
招聘图书兼职作者(长期兼职),本公司有十多年的计算机图书出版经验,每年出版上百本编程类图书, 和清华大学出版社 电子工业出版社 机械工业出版社都有很好的合作.你可以不用按时上线,不用天天被boss盯着 ...
- IdentityServer4(一)使用客户端凭证方式
这个篇文章主要是记录自己参考官方文档搭建身份认证的过程 使用的.NET Core2.2 参考地址:https://identityserver4.readthedocs.io/en/latest/qu ...
- 实现mypwd和mybash
一.pwd 1.学习pwd命令 man pwd查看pwd功能 可以得知pwd功能是打印当前目录 2.研究pwd实现需要的系统调用(man -k; grep),写出伪代码 (1)man -k direc ...
- wine install
# yum -y groupinstall 'Development Tools' # yum -y install libX11-devel libxml2-devel libxslt-devel ...
- 在MyEclipse使用Git新建分支,并上传分支---图文教程
1.选中项目,右键--->Team--->Switch To--->New Branch: 2.在弹出的窗口中,填写新建的分支名称,如下图 3.当前分支就会变成新建分支“test” ...
- Verilog风格
Verilog HDL编写原则: 可移植性强(多用宏定义:少用嵌入代码中的常数,即Magic Number:使用头文件): 必要的注释,代码易读: 模块间耦合尽可能低: 变量名与宏的命名规则: 变量名 ...