首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

金九银十,为期2周前端面经汇总(初级前端)

4、箭头函数 this 指向不同普通函数,this 总是指向调用它对象,如果用作构造函数,它指向创建对象实例。...forEach:只能遍历数组使用,不能用作其他也能迭代对象 3、for…in:是唯一一个可以迭代对象一种语法结构,当然,也可以迭代数组、字符串 map: 创建一个新数组,新数组结果是原数组每个元素都调用一次提供函数后返回值...子组件定义了三个slot标签,其中有两个分别添加了name属性header和footer 父组件中使用template并写入对应slot名字来指定该内容子组件现实位置 2.3 作用域插槽...,当读取 data 数据时自动调用 get 方法,当修改 data 数据时,自动调用 set 方法,检测到数据变化,会通知观察者 Wacher,观察者 Wacher自动触发,重新render...而在HTTP2下: HTTP/2客户端和服务器端使用“首部表”来跟踪和存储之前发送键-值对,对于相同数据,不再通过每次请求和响应发送;首部表HTTP/2连接存续期内始终存在,由客户端和服务器共同渐进地更新

2.9K20

初中级前端面试题目汇总和答案解析

比如js对象,数组. 引用类型占据空间大、大小不固定, 栈内存存放地址指向堆(heap)内存对象。...因此,所有方法定义变量都是放在栈内存;当我们创建一个对象时,对象会被保存到运行时数据区,以便反复利用(因为对象创建内存开销较大),这个运行时数据区就是堆内存。...谈谈你对发布-订阅和观察者模式区别 [参考答案] 1. 从定义上: •观察者模式: 软件设计是一个对象,维护一个依赖列表,当任何状态发生改变自动通知它们。...•发布-订阅设计模式: 发布-订阅模式,消息发送方,叫做发布者,消息不会直接发送给特定接收者,叫做订阅者。 2. 区别: •观察者模式观察者知道被观察者,被观察者一直保持对观察者进行记录。...发布订阅模式,发布者和订阅者不知道对方存在, 它们只有通过消息代理进行通信•发布订阅模式,组件是松散耦合,正好和观察者模式相反•观察者模式大多数时候是同步,比如当事件触发,被观察者就会去调用观察方法

74321
您找到你想要的搜索结果了吗?
是的
没有找到

初中级前端面试题目汇总和答案解析

比如js对象,数组. 引用类型占据空间大、大小不固定, 栈内存存放地址指向堆(heap)内存对象。...因此,所有方法定义变量都是放在栈内存;当我们创建一个对象时,对象会被保存到运行时数据区,以便反复利用(因为对象创建内存开销较大),这个运行时数据区就是堆内存。...谈谈你对发布-订阅和观察者模式区别 [参考答案] 1. 从定义上: •观察者模式: 软件设计是一个对象,维护一个依赖列表,当任何状态发生改变自动通知它们。...•发布-订阅设计模式: 发布-订阅模式,消息发送方,叫做发布者,消息不会直接发送给特定接收者,叫做订阅者。 2. 区别: •观察者模式观察者知道被观察者,被观察者一直保持对观察者进行记录。...发布订阅模式,发布者和订阅者不知道对方存在, 它们只有通过消息代理进行通信•发布订阅模式,组件是松散耦合,正好和观察者模式相反•观察者模式大多数时候是同步,比如当事件触发,被观察者就会去调用观察方法

1.1K20

iOS狗都不要,用这份面试真题,21天拿了4个大厂Offer

9、https和http区别 10、https加密过程,https传输过程属于什么加密 11、多线程、信号量 12、oc2mango热发原理 13、OC组件化、RN组件化 14、oc对象结构体...3、 http/https工作过程和区别、它们属于五层哪一层 4、 三次握手原理 5、get/put/post/delete请求方式 6、 项目里面你做了什么性能优化和启动改造 7、 为什么WKWebview...等等 7、 后台返回数据是多少K,大文件传输怎么办 8、数据库一些操作 9、iOS存储方式 10、TCP/IP协议 11、ARC引用计数、内存管理几个区域 12、OC基础数据类型 13、说一说多线程...怎么解决 7、RN原理 8、HTTPS和HTTP区别、五层模型 9、fps检测 10、cs基础 11、shell和ruby有写过脚本么 12、找出数组中比它左边都要大比它右边要小数放入到新数组...13、合并两个有序数组 14、买卖股票最佳时机 15、app启动流程 新势力 1、 项目中印象深刻比较难?

1.4K20

【C语言】找单身狗问题

例如: 有数组元素是:1,2,3,4,5,1,2,3,4 只有5出现了一次,要找出5. 2.解题思路 常规思路: 常规思路,我们首先想到肯定是使用两层循环嵌套方式遍历整个数组, 如果在遍历过程...例如: 有数组元素是:1,2,3,4,5,1,2,3,4,6 只有5和6出现了一次,要找出5和6. 2.解题思路 常规思路: 常规思路,我们同样是使用两层循环嵌套方式遍历整个数组, 如果在遍历过程...进阶思路: 先来观察数组: int arr[]={1,2,3,4,5,1,2,3,4,6}; 我们把这几个数组元素摘出来,便于观察: 接下来就是要解决问题了,首先我们想到是,能不能将这些元素分成两组,...它们二进制末位都是0时,该如何将它俩区分呢? 这时我们可以尝试将两个单身狗异或一下,就能找到其中规律....因此,我们最开始时候将数组所有元素相异或,得到其实就是两个单身狗相异或结果, 然后将该结果二进制位从最低位开始检索,直到找到为"1"那一位,记录下这一位,并以此作为分组依据,将数组元素分为两组后分别相异或

9510

【超详细】手把手教你ElasticSearch集群搭建

节点(Node) Node为集群单台节点,其可以为master节点亦可为slave节点(节点属性由集群内部选举得出)并提供存储相关数据功能 切片(shards) 切片是把一个大文件分割成多个小文件然后分散存储集群多个节点上...+ Array类型: Elasticsearch数组不需要声明专用字段数据类型。但是,在数组所有值都必须具有相同数据类型。...足球","篮球","兵乓球"] } ``` + object类型: 用于存储单个JSON对象, 类似于JAVA对象类型, 可以有多个值, 比如LIST,可以包含多个对象。...+ Nested类型 用于存储多个JSON对象组成数组,`nested` 类型是 `object` 类型一个特例,可以让对象数组独立索引和查询。...在这个过程,节点A扮演就是协调节点角色。 ES一次请求非常类似于Map-Reduce操作。ES对应也是两个阶段,称之为scatter-gather。

4.6K20

【JavaWeb】89:request请求

详情见下图,模拟post请求时也就可以修改这两个属性。 ? ②浏览器地址 当点击登录提交按钮后,浏览器就会跳转action对应那个路径。其中get请求:会将参数拼接到url后面。 如何拼接呢?...浏览器抓包观察请求报文 这边我又将①中表单请求方式改成post了,主要也是为了将get和post做一个总结对比。 ? 一般是用谷歌浏览器,按F12进入开发调试,Network选项可以抓包。...①请求行 get请求参数是被拼接在url后面的。 而在post请求是不拼接参数。 正是因为如此,get请求不可以传输数据类较大或者非文本数据,因为太长了url写不下。...那么服务器如何获取这些数据呢? 又如何进行处理呢?Java中一切都是对象,肯定有对应类和对象。 1Request请求行 ?...转发过程数据是共享,也就是存储对象数据。 最后 谢谢你观看。 如果可以的话,麻烦帮忙点个赞,谢谢你。

88430

关于 ECMAScript 2015(ES6)一些有用提示和技巧

2.2 使用 “reduce” 代替 “map” 或 “filter” 如果你仔细观察了上面的例子(2.1),你就知道 reduce 可用于遍历各项并对其进行过滤或映射!... *rest* 参数,除了迭代整个对象来删除他们这个方法之外,我们还可以简单地提取这些属性变量,以保持有用。在下面例子,我们想要删除 _internal 和 tooBig 属性。...第 2 个对象键值对会覆盖第 1 个对象键值对 [译者注:如果键名相同的话]。下面示例第 object2 b 和 c 两个键值对覆盖了 object1 同名键值对。 ? 4....数组解构 很多时候你函数可能会返回一个数组多个值。我们可以通过使用数组解构来轻松获取它们。 5.1 交换值 ?...5.2 从一个函数接收和赋值多个值 在下面的例子,我们正在从/post上获取帖子,以及存在/comments相关评论。由于我们使用async / await,函数返回结果保存在数组

71930

express中间件原理

like-express文件 /*简单实现中间件原理 思路: 定义一个类,类里面有和express对应use get post函数, 使用时候,创建实例,并使用这些函数。...将这些函数里面的参数,如app.use('/',f,f),进行解析, 全部存入到对象对应属性(这些属性应该都为对象数组,每个对象为path和stackk属性组成) http服务中会对用户输入接口进行拦截...,这时我们对其进行处理,对客户端发过来不同method和不同url返回对应要执行stack(stack存是函数数组), 最后写一个next核心机制去执行这些函数。...*/ const http = require('http') const slice = Array.prototype.slice //数组原型上slice(start,end),从已有的数组返回选定元素...post:[] //app.post } } //将path和stack放入到info,stack存是函数,返回info register(path

55410

从Rust到远方:PHP星系

该函数需要一个字符串类型参数,如果解析失败,则返回false,否则返回Gutenberg_Parser_Block 或者 Gutenberg_Parser_Phrase对象数组。让我们写下来!...下一步是要映射这些Rust/C类型到PHP类型,也就是Gutenberg类数组。...对象追加到将要返回数组里面。...我们已经看到现实世界如何用Rust编写一个解析器,如何将其绑定到C然后编译到一个静态库和C头文件,如何创建一个PHP扩展暴露一个函数和两个对象,如何将C绑定集成到PHP,以及如何在PHP中使用这个扩展...从Rust角度来看,答案是肯定,但是C或PHP中发生所有事情都必须被认为是不安全C绑定必须特别注意处理所有情况。还快吗?我们来做个基准测试。

1.1K40

比较JavaScript数据结构(数组对象

数组数据以有序方式进行结构化,即数组第一个元素存储索引0,第二个元素存储索引1,依此类推。 JavaScript为我们提供了一些内置数据结构,数组就是其中之一 ?...JavaScript,定义数组最简单方法是: let arr = [] 上面的代码行创建了一个动态数组(长度未知),为了了解如何将数组元素存储在内存,我们来看一个示例: let arr = [...内存名称按以下方式存储: image.png 为了理解数组是如何工作,我们需要执行一些操作: 添加元素: JavaScript数组,我们有不同方式在数组结尾,开关以及特定索引处添加元素。...为了更好地理解它,我们看一个例子: 假设为下面的对象分配了5块空间 image.png 我们观察两个键值对存储相同地址空间中。 怎么会这样?...尽管此方法看起来很简单,但我们需要了解对象键值对是随机存储在内存,因此,遍历对象过程变得较慢,这与遍历按顺序将它们分组在一起数组不同

5.4K30

php面试题目100及最佳答案

26.面向对象编程 有两个重要概念:类和对象 类是具备某项功能抽象模型,实际应用,还需要对类进行实例化后使用。这样就引入了对象概念。 对象是类进行实例化后一个产物,是一个实体。...当可观察对象更改时,它会将消息发送到已注册观察者。...到 86.Formget和post方法,在数据传输过程中分别对应了HTTP协议GET和POST方法。...之所以也能传送数据,只是用来设计告诉服务器,你到底需要什么样数据.Post信息作为http请求内容,而Get是Http头部传输。...— 返回一个单元顺序相反数组 array_unique — 移除数组重复值 array_merge — 合并一个或多个数组 count — 计算数组单元数目或对象属性个数 sizeof

8.2K30

【愚公系列】2023年03月 其他-Web前端基础面试题(JS_33道)

为了明确这个概念,我们必须再次强调下面几点: HTTP 协议 未规定 GET 和 POST 长度限制 GET 最大长度显示是因为 浏览器和 web 服务器限制了 URI 长度 不同浏览器和...(1)什么是闭包: 闭包是指有权访问另外一个函数作用域中变量函数。 闭包就是函数局部变量集合,只是这些局部变量函数返回后会继续存在。...闭包就是就是函数“堆栈”函数返回后并不释放,我们也可以理解为这些函数堆栈并不在栈上分配而是堆上分配。当在一个函数内定义另外一个函数就会产生闭包。...所有 JS 函数都是闭包,但是这是理论上闭包,还有一个实践角度闭包,从实践角度上来说,只有满足 1、即使创建它上下文已经销毁,它仍然存在,2、代码引入了自由变量,才称为闭包。...仅检查值相等,而=是一个更严格等式判定,如果两个变量值或类型不同,则返回false。 33、break和continue语句作用? Break语句从当前循环中退出。

89810

如何为机器学习索引,切片,调整 NumPy 数组

完成本教程后,你获得以下这些技能: 如何将列表数据转换为NumPy数组。 如何使用Pythonic索引和切片操作访问数据。 如何调整数据维数以满足某些机器学习API输入参数维数要求。...有关示例,请参阅笔者以前文章: 如何在Python中加载机器学习数据 本节假定你已经通过不同于上述两种其他方式加载或生成了你数据,现在正使用 Python 列表来存储这些数据。...我们来看看如何将这些列表数据转换为 NumPy 数组。 一维列表转换为数组 你可以通过一个列表来加载或者生成,存储并操作你数据。...假设有一个数据表,其中每一行代表一个观察点,每一列代表一个不同属性。 也许你生成了这些数据,或者使用自己代码加载了这个数据表,现在你有一个二维列表(列表每一项是一个列表)。...[44 55] 二维切片 我们来看看你最有可能在机器学习中使用两个二维切片例子。 拆分输入输出 将加载数据分解为输入变量(X)和输出变量(y)机器学习是很常见操作。

6.1K70

前端一面手写面试题总结_2023-03-13

1)Array.prototype.sliceslice()方法是JavaScript数组一个方法,这个方法可以从已有数组返回选定元素:用法:array.slice(start, end),该方法不会改变原始数组...该方法有两个参数,两个参数都可选,如果两个参数都不写,就可以实现一个数组浅拷贝。...此方法不会更改现有数组,而是返回一个新数组。该方法有两个参数,两个参数都可选,如果两个参数都不写,就可以实现一个数组浅拷贝。...(3)让函数 this 指向这个对象,执行构造函数代码(为这个新对象添加属性)(4)判断函数返回值类型,如果是值类型,返回创建对象。如果是引用类型,就返回这个引用类型对象。...,等于返回temp函数不被执行而是打印,了解JS朋友都知道对象toString是修改对象转换字符串方法,因此代码temp函数toString函数return m值,而m值是最后一步执行函数时

41220

MongoDB系列二(介绍).

但是后来人们慢慢发现,不要把这些数据分散到多个表、节点或实体,将这些信息收集到一个非规范化(也就是文档)结构中会更有意义。...不同于表是,一个集合里面的文档可以是各式各样,例如,下面两个文档可以存储同一个集合里面:     {"greeting" : "Hello, world!"}    ...local     这个数据库永远都不可以复制,且一台服务器上所有本地集合都可以存储在这个数据库 config     MongoDB用于分片设置时,分片信息会存储config数据库。  ...数组    -- 数组可以包含不同数据类型元素 对象(内嵌文档)   -- {"x" : {"foo" : "bar"}} 对象id   -- 对象id是一个12字节ID,是文档唯一标识。  ..." : "job post."}]} }) $addToSet(针对数组) -- $addToSet添加值到一个数组中去,如果数组已经存在该值那么将不会有任何操作。

1.6K80

web前端常见面试题总结

前端:减少http请求、减少Cookie传输、使用浏览器缓存、启用文件压缩、CDN加速、反向代理。 4.Js关于数组操作有哪些?...GET把参数包含在URLPOST通过request body传递参数 GET产生一个TCP数据包;POST产生两个TCP数据包。...对于GET方式请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据); 而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送...http缓存:强缓存主要是采用响应头中Cache-Control和Expires两个字段进行控制 浏览器缓存:Cookie、LocalStorage、SessionStorage、Service...route为当前router跳转对象里面可以获取name、path、query、params等 router为VueRouter实例,想要导航到不同URL,则使用 列举常用vue指令?

1.5K20

猫头鹰深夜翻译:对于RestAPI简单基于身份权限控制

查看用户活动通常只会产生用户执行有限数量操作(如读取数据,提交表单)。深入观察这些用户行为会发现,这些行为通常一起执行,即执行A操作用户往往也会执行B操作。...观察用户关于上述角色行为模式时,我们经常发现用户之间有很多共同之处,比如某一组用户常常行为相似--共同资源上执行相同操作。这允许我们将用户组织到组,然后将角色分配给少数组,而不是许多用户。...update_order(Order order); 不同语言和框架,这种做法非常常见。...比如,POST http://www.domain.com/bookings会创建一本新书,而GET http://www.domain.com/orders/12345会返回订单#12345详情。...为了使访问控制机制有意义,建议阻止所有其他到系统路由,例如直接访问数据存储或代码任何远程调用机制。该架构另一个重要优点是响应过滤,以防某些不应当返回给用户数据写在响应

99940

初中级 PHP 面试基础汇总

适配器模式 将不同接口适配成统一API接口,例如数据操作有mysql、mysqli、pdo等,可利用适配器模式统一接口。 观察者模式 一个对象通过添加一个方法使本身变得可观察。...当可观察对象更改时,它会将消息发送到已注册观察者。例如实现实现消息推送——将所有类实例化注册到一个数组,通过循环批量执行类。...POST传送数据量较大,一般被默认为不受限制 GET安全性非常低,POST安全性较高 session与cookie区别 session存储服务器上php指定目录(session_dir)位置...cookie存储客户端 数据库事务是什么?...<=1) return $arr; //数组元素有多个,则定义两个数组 $left = $right = array(); //使用for循环进行遍历,把第一个元素当做比较对象

1.1K20

初中级PHP面试基础汇总

,根据浏览者不同,给予不同显示与操作 - 类似不同用户呈现不同效果 注册模式 提供了程序中有条理存放并管理一组全局对象 (object) - 类似服务提供者注入 适配器模式 将不同接口适配成统一...当可观察对象更改时,它会将消息发送到已注册观察者。...方法 – 某个方法或输出之前执行或之后执行,用于修饰 迭代器模式 提供一个方法顺序访问一个聚合对象各个元素,PHP中将继承 Iterator 类 – yield POST和GET有什么区别 GET...是从服务器上获取数据,POST是向服务器传送数据 GET是通过发送HTTP协议通过URl参数传递进行接收,而POST是实体数据,通过表单提交 GET传送数据量较小,不能大于2KB。...GET安全性非常低,POST安全性较高 session与cookie区别 session存储服务器上php指定目录(session_dir)位置 cookie存储客户端 数据库事务是什么

1.3K10
领券