Vue面试题_Jar-bui~~的博客-程序员信息网

技术标签: vue  

Vue面试题

2.js的基本数据类型?

Number Object string null undifend function symbol

已知DOM节点,怎么获得其父节点

parentNode $("#test1").parent()

7.闭包是什么 应用场景 常驻内存如何释放。

全局变量污染的问题解决了 内部函数调用外部函数的参数 页面解构的时候执行

8.promise.all是用来干啥的

promise.all 主要是等所有的接口都调完,再进行下一步操作

9.var let const 区别

1、let关键字,用来代替 var的关键字,特点: 1、变量不允许被重复定义 2、不会进行变量声明提升 3、保留块级作用域中i的

2、const定义常量,特点:1、常量值不允许被改变 2、不会进行变量声明提升

3、var 可以声明提升 提升至作用区顶端 变量允许被重复定义

10.关于继承的问题(这个题很长忘记了 ,反正他给我说要在开始加上super)

super es6继承属性

class Worker extends Person。es6继承方法

*//*继承属性 我们们使用构造函数去实现类的存在。

Person.call(this, name, sex);

*//*继承方法

Object.create(Person.prototype);

2.你用到的遍历的方法都有哪些?

Forin for while for each https://blog.csdn.net/weixin_46419373/article/details/107007546

4 . ES6 新增数组方法

reduce some every filter map forEach

6 . jqery 使用过吗?

使用过

7 . 用jqery 实现过什么效果 及步骤

拖拽,轮播图

8 . 使用过什么ui组件库

sui mui vant mint

10 . 跨域请求有多少种方法 项目中如何使用

1、JSONP跨域

2、cors Access-Control-Allow-Origin 是由后台去操作

3、反向代理/正向代理

https://www.cnblogs.com/gitnull/p/9817405.html

11 . Jsonp 在项目中使用场景 方法

解决跨越请求。通过src属性来支持

12 . 用过svn吗 用过

window的软件,和github一样

13 . 项目从需求到测试上线 过程

20 . 函数和方法区别

函数和方法是一段代码,通过名方法字来进行调用,但跟一个对象相关联。方法和函数大致上是相同的,但有两个主要的不同之处:

  1. 方法中的数据是隐式传递的;
  2. 方法可以操作类内部的数据(请记住,对象是类的实例化–类定义了一个数据类型,而对象是该数据类型的一个实例化)

13.用es6语法查找数组中的某一项

find indexOf

14.深拷贝,浅拷贝

Object.assgin

不管在对象或者数组中嵌套多少层,如果只拷贝地址不拷贝数据。叫做浅拷贝。

​ 不管在对象或者数组中嵌套多少层,直接生成新数据拷贝数据。叫做深拷贝。

15.js对象拷贝

Object.assgin

11.简述观察者模式

5.let,var,const区别

Let变量声明 1 不允许变量名重复声明 2 没有声明提升 3只在声明所在的块级作用域内有效 4在声明前无法使用

Const常量声明。1 声明必须赋值2 赋值不允许更改 3只在声明所在的块级作用域内有效

Var 声明变量 1 允许重复声明 2 作用域提升 3 var定义的变量是全局变量或者函数变量 4声明之前回报undefeated

6.ES6之前的继承方式

​ 但是在ES6之前没有类 我们使用构造函数去实现类的存在。

​ 继承属性。。通过call

​ 继承方法通过 Object。created

7.ES6里面有有没有类的概念

有 class类

7.为什么要跨域?

当前端请求服务器后台数据时候由于浏览器有安全沙箱 会进行跨越拦截 导致请求失败

  			 同源策略:

  					*1*、同协议

  					 *2*、同域名*/*主机

  			 *3*、同端口号

8.怎么解决跨域?

Jsonp

后端代理

cors

9.JSONP的缺点?

2.1它只支持GET请求而不支持POST等其它类型的HTTP请求

​ 2.2它只支持跨域HTTP请求这种情况,不能解决不同域的两个页面之间如何进行JavaScript调用的问题。

​ 2.3 jsonp在调用失败的时候不会返回各种HTTP状态码

​ 2.4缺点是安全性。万一假如提供jsonp的服务存在页面注入漏洞,即它返回的javascript的内容被人控制的。那么结果是什么?所有调用这个 jsonp的网站都会存在漏洞。于是无法把危险控制在一个域名下…所以在使 用jsonp的时候必须要保证使用的jsonp服务必须是安全可信的。

es6新增

https://blog.csdn.net/wsymcxy/article/details/82913756

原型链

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BLY0xclz-1601815575748)(/Users/momo/Desktop/三阶段资料/原生js面试题/img/截屏2020-10-01 下午8.39.32.png)]

bind call apply区别

1 bind会产生新的函数

2call和apply传参不同

箭头函数

*function()中this是指向调用这个函数的对象

  • 箭头函数中,本身没有this借用函数外部代码块的this
  • arguments,不能使用
    由于this在箭头函数中已经按照词法作用域绑定了,所以,用call()或者apply()调用箭头函数时,无法对this进行绑定,即传入的第一个参数被忽略

for of循环

for of可以循环数组,但是不能循环json,因为它是为了与map配合使用

1.手写数组去重

var a = [1,2,3,5,65,65,6,56,5,65,6,56,5,3,2,3,2,32,3,2,32,3,23,2,3]

for(var i = 0; i < a.length; i++){
     
  for(var k = 1 + i; k < a.length; k++){
     
      if(a[i] == a[k]){
     
          a.splice(k,1)
          k--
      }
  }
}
console.log(a)

2.手写一个生成10到100随机数 并排序

var a = []
for (var i = 10; i <= 100; i++) {
     
  var d = parseInt(Math.random() * 100)
  a.push(d)
  a.sort()
}
console.log(a)

cookies和localstorage及sessionstorage的区别

谈谈对json的看法

1- 每个数据,必须对应一个 key
2- 只能使用双引号
3-key 必须是双引号包裹 " "

JSON对象是 javascript 的原生对象,用来处理JSON格式数据,有两个方法:

  • JSON.parse(string):接受一个 JSON字符串 将期转化为 javascript 对象
  • JSON.stringify(obj): 接受一个 javascript 对象 转化为一个 JSON字符串

JSON 的标准写法:
  只能用双引号
  所有的key都必须用双引号包起来

说一些数组有哪些方法

Push unshift shift pop concat splice map filter join slice

三个点用来干什么的

展开运算符

8.深拷贝与浅拷贝区别,通过什么方式拷贝

Object.assign

​ 不管在对象或者数组中嵌套多少层,如果只拷贝地址,不拷贝数据。叫做浅拷贝。

​ 不管在对象或者数组中嵌套多少层,直接生成新数据拷贝数据。叫做深拷贝。

12.创建对象有哪几种方式 函数

第一种(函数声明): 第二种(函数表达式):匿名函数:第三种(构造函数):

https://www.jb51.net/article/107012.htm

代码管理git

git是一种分布式的版本管理系统,Linux的创造者Linus写的。

GitHub是基于git的代码库托管站,也算是程序员的SMS(以码会友),其中一个主要的开源代码发布或托管站

ES6新增特性

1、let关键字,用来代替 var的关键字,特点: 1、变量不允许被重复定义 2、不会进行变量声明提升 3、保留块级作用域中i的

2、const定义常量,特点:1、常量值不允许被改变 2、不会进行变量声明提升

3、箭头函数

与普通函数的区别:1、书写上用=>代替了function

2、普通函数的this指向window 而ES6箭头函数里面的this指向定义时的那个对象 而不是运行时的那个对象

4、字符串模板``

5、ES6中字符串和数组新增了那些方法

​ 字符串

​ 1、字符串模板

​ 2、includes

​ 3、startswith

​ 4、endsWith 等

​ 数组

​ 1、Array.of //将一组数值转化为数组

​ 2、Array.from 等

​ 将伪数组转为数组: var list = Array.from(document.getElementsByTagName("li”));、

6、第七种数据类型Symbol

7、ES6中set集合和Map集合

set:

set是ES6提供的一种新的数据结构,类似于数组,但是成员的值是唯一的没有重复的,接受的参数是一个数组方法有:

add():添加

delete():删除

size:长度

has():查找

clear:清除所有

map:

map类似于对象,也是键值对的集合, 但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键方法有:

set():设置

get():获取

delete():删除

has():查找

clear():清除所有

8、Promise规范

1、什么是promise?

异步操作的同步代码

2、promise的基本使用

通过new promise创建一个promise对象,里面有一个参数,参数是一个回调函数,回调函数中有2个参数,resolve,reject resolve()当

异步执行成功的时候调用的方法,reject()当异步失败的时候调用的方法。

除此之外promise有一个then方法,当成功的时候执行第一个回调函数,当失败的时候执行第二个回调函数。第二个回调函数也可以通过

promise对象.catch调用

3、Promise.all():当所有的异步代码都执行完毕以后才会执行.then中的操作

4、Promise.race():只要有一个promise执行完毕后就会执行.then操作

5、如何实现多个异步同步执行

var p1 = new Promise(function(resolve,reject){

setTimeout(function(){

console.log(‘1’);

resolve()

},3000)

})

function p2(){

return new Promise(function(resolve,reject){

setTimeout(function(){

console.log(“2”);

resolve();

},2000)

})

}

function p3(){

return new Promise(function(resolve,reject){

setTimeout(function(){

console.log(“3”);

resolve();

},1000)

})

}

function p4(){

return new Promise(function(resolve,reject){

setTimeout(function(){

console.log(“4”);

resolve();

},500)

})

}

p1.then(function(){

return p2()

})

.then(function(){

return p3();

})

.then(function(){

return p4();

})

9、类的支持

数组去重

什么是事件冒泡,在哪儿用,怎么阻止

cancelBubble=true

stopPropagation()

回调函数在哪儿用

**.** 回调函数的作用

js代码会至上而下一条线执行下去,但是有时候我们需要等到一个操作结束之后再进行下一个操作,这时候就需要用到回调函数。

**.** 回调函数的解释

因为函数实际上是一种对象,它可以存储在变量中,通过参数传递给另一个函数,在函数内部创建,从函数中返回结果值”,因为函数是内置对象,我们可以将它作为参数传递给另一个函数,到函数中执行,甚至执行后将它返回,它一直被“专业的程序员”看作是一种难懂的技术。

localStorage和sessionStory区别

永久储存和一次对话储存

localStorage有多大,最多可以存储多少数据

localStorage

1、永久存储

2、最大5MB

你在项目中哪里用的localstory

存储用户登陆状态

rem自适应怎么配置,在项目的什么地方写的(window.onresize)

//动态计算rem

​ document.documentElement.style.fontSize =

​ document.documentElement.clientWidth / 7.5 + “px”

​ window.onresize = function(){

​ document.documentElement.style.fontSize =

​ document.documentElement.clientWidth / 7.5 + “px”

​ }

在项目入口文件里面写啊

node.js+MongoDB

用过 mongodb是一个非关系型数据库 Node.js 就是运行在服务端的 JavaScript。非关系型数据库,又叫nosql

• promise是用来做什么的?

它是一个对象,用来传递异步操作的信息。

promise三个状态?

Pending:进行中,Resolved:已完成,Reject:已失败

promise优缺点

优点:可以通过.then解决回调地狱的问题,通过try-catch解决问题捕获

请求数据的时候默认请求头有哪些?

JSONP和JSON区别

1、JSON:是一种轻量级的数据交换格式。 2、JSONP:是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。

是否了解ES6中的athec和await?有何用?

• 去重,深拷贝,拖拽最好能自己写出来

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/hhhhhjkhf/article/details/108922456

智能推荐

Python开发笔记:网络数据抓取_asevb02442的博客-程序员信息网

网络数据获取(爬取)分为两部分:1、抓取(抓取网页)· urlib内建模块,特别是urlib.request· Requests第三方库(中小型网络爬虫的开发)· Scrapy框架(大型网络爬虫的开发)2、解析(解析网页内容)· BeautifulSoup库· re模块(正则表达式)或者第三方API抓取和解析。 Requests库(http...

STM32 ——高级定时器、通用定时器、基本定时器的区别_Arthur-Ji的博客-程序员信息网

结论:通用有的,高级都有,正常使用。但是基本定时器真的只有计算一下时间,产生更新中断的作用。下面是具体细节TIM1和TIM8定时器的功能包括【增强型】:● 16位向上、向下、向上/下自动装载计数器● 16位可编程(可以实时修改)预分频器,计数器时钟频率的分频系数为1~65535之间的任意数值● 多达4个独立通道: ─ 输入捕获 ─ 输出比较 ─ PWM生成(边缘或中间对齐模式) ─ 单脉冲模式输出...

WPF中DataGrid设置列头样式_夜读春秋的博客-程序员信息网

Boss 一声令下,来吧,略Geek的黑色风格太阴暗,界面风格给我改得阳光点。接下来各种调整。记一下设置DataGrid列头样式的方法。<DataGrid ...>... <DataGrid.ColumnHeaderStyel> <Style TargetType="{x:Type DataGridColumnHeader}"> <Set

浅谈滴滴派单算法_傲娇的koala的博客-程序员信息网

桔妹导读:说到滴滴的派单算法,大家可能感觉到既神秘又好奇,从出租车扬召到司机在滴滴平台抢单最后到平台派单,大家今天的出行体验已经发生了翻天覆地的变化,面对着每天数千万的呼...

CSS实现自定义导航栏带二级菜单_自适应 导航 二级 菜单_缘如风的博客-程序员信息网

代码如下:&amp;lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot; &quot;http://www.w3.org/TR/html4/loose.dtd&quot;&amp;gt;&amp;lt;html&amp;gt;&amp;lt;head&amp;gt;&amp;lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text

vue-cli3.0+vant出现的问题总结_mschange的博客-程序员信息网

1、轮播图在ios9以下都不能滑动 解决办法:https://github.com/surmon-china/vue-awesome-swipernpm install vue-awesome-swiper --save全局引入import Vue from 'vue'import VueAwesomeSwiper from 'vue-awesome-swiper...

随便推点

Web网站安全性的五个误解_csdnyehao的博客-程序员信息网

来自http://meichai.cn/mict/33250.html        目前,黑客攻击已成为一个很严重的网络问题。许多黑客甚至可以突破SSL加密和各种防火墙,攻入Web网站的内部,窃取信息。黑客可以仅凭借浏览器和几个技巧,即套取Web网站的客户信用卡资料和其它保密信息。   随着防火墙和补丁管理已逐渐走向规范化,各类网络设施应该是比以往更完全。但不幸的是,道高一尺,魔高一丈,黑客...

idea中ssm(spring-spring mvc-mybatis)框架搭建_王建新的博客-程序员信息网

我的idea是13.1.3首先点击 File - New Project - 选择maven ,并且在右面选择maven-archtype-webapp选项,如图所示点击next后,出现填写GroupId和Artifactid,一般GroupId写com.***.项目,Artifactid写你的项目名称然后点击next点击nextProject

【PyTorch】8 语言翻译Torchtext实战——英语和德语翻译、Attention模型、 Pytorch 1.8 安装_as of spacy v3.0, shortcuts like 'de' are deprecat_Yang SiCheng的博客-程序员信息网

torchtext 语言翻译1. 数据处理2. DataLoader3. 定义我们的nn.Module和Optimizer4. 训练这是官方文本篇的一个教程,原英文文档,中文文档和API文档本教程介绍了如何使用torchtext预处理包含英语和德语句子的著名数据集的数据,并使用它来训练序列到序列模型,并能将德语句子翻译成英语1. 数据处理torchtext具有工具,可用于创建可以轻松迭代的数据集,以创建语言翻译模型。 在此示例中,我们展示了如何对原始文本句子进行标记,构建词汇表以及将标记数字化为张量

黑客告白失败:她根本配不上我这么聪明的男人?七夕程序员正确…_黑客代码表白情书_IT小默的博客-程序员信息网

在这个浪漫的节日,程序员的求爱经历又是怎样的呢?像是这样?在告白的时候,想的不是“我爱你”而是 16 进制算法,不仅如此,还声称:「她根本配不上我这么聪明的男人」说起程序员,很多人的第一印象都是这样不懂得浪漫,凭自己实力单身这里U妹我就不同意了!其实程序员的情话来也可以很浪漫,他们的浪漫更多体现在一行行的代码里,接下来我们就一起看看三行代码情书1Privat...

nyoj___大数阶乘_Venku的博客-程序员信息网

http://acm.nyist.net/JudgeOnline/problem.php?pid=28大数阶乘时间限制:3000 ms | 内存限制:65535 KB难度:3描述我们都知道如何计算一个数的阶乘,可是,如果这个数很大呢,我们该如何去计算它并输出它?输入输入一个整数m(0&lt;m&lt;=5000)输出输出m的阶乘,并在输出结束之后输入一个换行符样例输入...

SPH0645LM4H-B CRAWFORD MIC DGT I2S BOTTOM PORT_A杨彩红Iris的博客-程序员信息网

SPH0645LM4H-B制造商:Knowles制造商零件编号:SPH0645LM4H-B描述:CRAWFORD MIC DGT I2S BOTTOM PORT对无铅要求的达标情况/对限制有害物质指令(RoHS)规范的达标情况:无铅/符合限制有害物质指令(RoHS)规范要求详细描述:20Hz-~-10kHz-数字-I2S-Microphone-MEMS(硅)-1.62V-~-3.6V-全...

推荐文章

热门文章

相关标签