第一部分 MVVM如何实现模板绑定,依赖是如何收集的? vue2中的diff算法是怎样实现的? 请详细说出vue生命周期的执行过程? vue组件间的交互有七种你知道几种? vue-cli3.0如何实现的? 说说hash路由和history路由,你能自己编写一个前端路由吗? 你能手写vuex状态管理吗? 你能开发自己的组件库吗(树组件,日期组件,表格组件)? 第二部分 vue里面的虚拟dom是怎么回事 vue双向绑定讲一讲 讲vue-lazyloader的原理,手写伪代码 讲express框架的设计思想 讲事
三月份有很多朋友辞职跳槽,也遇到了许许多多的面试题,在交流群里和网站上总结了一些常见的面试题,细细分析,其实基本都是万变不离其宗,所有的问题都是从某一技术点的基础出发,综合考量,如果懂得了这项技术的原理所在,题目答起来内容都差不多能答对。 基础 首先介绍一下自己最近的项目? 项目介绍一下,最有成就感的一个项目? 介绍一下你自己对自己满意的能力? 为什么学前端?除了前端你还写什么? 你认为前端的主要工作职责是什么?为什么需要前端? 概念: 什么是同源策略? 怎么设计好的组件 HTTP和HTTPS的区别?HTT
携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第3天,点击查看活动详情
前端开发中会遇到一些频繁的事件触发,像是resize、scroll、mousedown、mousemove、keyup、keydown等。
接着往期的3篇继续,一步步动手做: 自己动手做一个识别手写数字的web应用01 自己动手做一个识别手写数字的web应用02 自己动手做一个识别手写数字的web应用03 如果你练习里前面三篇,相信你已经熟悉了Docker和Keras,以及Flask了,接下来我们实现一个提供给用户输入手写字的前端web页面。 前端画板我们可以自己用最基本的canvas写,也可以选择封装好的开源库: 下面介绍2个比较好的模拟手写效果的画板库: 1 signature_pad https://github.com/szimek/s
你需要一些HTML和css的基础知识,掌握JavaScript和ES6的基本语法,对事物的好奇心。
发布/订阅者模式应该是我在开发过程中遇到的最多的设计模式。发布/订阅者模式,也可以称之为消息机制,定义了一种依赖关系,这种依赖关系可以理解为 1对N (注意:不一定是1对多,有时候也会1对1哦),观察者们同时监听某一个对象相应的状态变换,一旦变化则通知到所有观察者,从而触发观察者相应的事件,该设计模式解决了主体对象与观察者之间功能的 耦合。
WeakMap只能以复杂数据类型作为key,并且key值是弱引用,对于垃圾回收更加友好。
之前一直在牛客刷面筋,今天终于自己也写了一篇,算是秋招的总结吧。希望大家都能顺利拿到自己想要的offer! lz本科妹子,从没有想过要当程序员......无奈非技术不好找工作,看到产品400:1的时候
知晓程序员,专注微信小程序开发的程序员! 一、判断小程序版本号 小程序的API是不断更新的,你可能使用某个API时,文档里会说明,此API在1.x.x版本开始支持,需要自己做兼容处理。 如果你使用小程序版本号做兼容,就必须了解小程序的基础库版本号规则,在这里介绍一下。 小程序基础库版本号使用 semver 规范,格式为 Major.Minor.Patch,Major、Minor、Patch 均为整数,1.9.901、2.44.322、10.32.44 都是符合 semver 风格的版本号。 以下是官方提供
flat()方法会按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并为一个新数组返回。
用来解析JSON字符串,构造由字符串描述的JavaScript值或对象。提供可选的reviver函数用以在返回之前对所得到的对象执行变换(操作)。
无论是学习react还是vue,它们都是js的应用框架。剥去他们的壳子看到的始终是js,所以作为一个前端大厨必须要熟练掌握好js这个大勺,才能烧出一顿好菜
作者用了 1 个月时间开发了一款个人 RSS 阅读器,并选择了 Svelte 和 SvelteKit 作为 Web 客户端的工具。这个选择的主要目的是为了评估这些工具是否适合在大型项目中使用。作者发文分享了对于 Svelte 的一些思考,这篇文章引起了 Hacker News 上读者的关注,并且被顶到了首页。fenomas 和 illilarian 这两位用户谈到了他们对于过渡和动画 API 的看法。如果需要在 Svelte 管理的元素进入和离开 DOM 时对其进行动画处理,那么作者“吐槽”的这些 API 就非常有用。看来作者之前的抱怨不成立了。如果是你,你会把 Svelte 用到大型公开项目中吗?
我们知道一般浏览器自动为我们填充用户名密码,单身有的时候我们不需要,那么要怎么做呢?
嗨咯大家好,我是 Uni。本人就读于某双非一本大学计算机系,大一的时候在疲于提升绩点后,发现自己根本不知道计算机有哪些领域,能够干啥。于是在互联网上广泛搜索计算机有哪些领域、需要学什么、能干什么后,确定了自己喜欢的领域:前端。在我看来前端就是美学与逻辑的完美结合,也是那个时候坚定了自己的座右铭:无论是技艺、构图、还是大胆的想法,达到极致,即为艺术。于是在大一下,我开始了我的前端自学之路。
在网络节点中,负责消费资源的电脑,叫做客户端,负责对外提供网络资源的电脑,叫做服务器。
2年工作经验出去接受社会的毒打,参与的前端社招的公司和题目的记录如下,后续可能还会有增加,先暂时记录这么多:
艺术喵 2 年前端面试心路历程(字节跳动、YY、虎牙、BIGO)| 掘金技术征文
JavaScirpt 使用 Number 类型来表示数字(整数或浮点数),遵循 IEEE 754 标准,通过 64 位来表示一个数字(1 + 11 + 52)
前言 关于技术,只有不停重复学习,方能如扎如稳的前行。 1.函数柯里化 函数柯里化的是一个为多参函数实现递归降解的方式。其实现的核心是: 要思考如何缓存每一次传入的参数 传入的参数和目标函数的入参做
JavaScript开发的过程中,处理浏览器的兼容很复杂而且很耗时,于是一些封装了这些操作的库应运而生。这些库还会把一些常用的代码进行封装。
前言 从8月中旬实习结束就开始找工作了,一直到十一,终于尘埃落定,十一出去好好放松了一下,今天写一些面经回报牛客。 非科班,从大三开始学习前端,几乎是零基础,但很庆幸遇到了很好的学长,帮助我少走了不少弯路, 自己也比较喜欢前端,所以最后虽然没有拿到bat的offer,但目前也收到了美团、迅雷、网宿、CVTE的,最终还是决定去美团了。 比较后悔的时内推比较晚了,之前实习一直没有在意,实习回来内推已经不多了,我笔试也比较菜,所以前期挂到绝望。。。 笔试 笔试没有太多的方法,主要就是刷题,牛客网上的题、剑指o
下面来看一道比较典型的问题,通过这个问题来对比几种异步编程方法:红灯 3s 亮一次,绿灯 1s 亮一次,黄灯 2s 亮一次;如何让三个灯不断交替重复亮灯?
源码demo地址:https://github.com/JinJieTan/react-keepAlive-dynamic
作者:俊劫 https://juejin.cn/post/6942988170208215076
事件钩子会有不同的类型 SyncBailHook,AsyncSeriesHook,SyncHook等
之前刷知乎的时候,看到这么一个问题:“如何衡量一个人的 JavaScript 水平?[2]”然后自己也不要脸地回答了一下这个问题。以下是我的答案:
至此我们介绍了react的理念,如果解决cpu和io的瓶颈,关键是实现异步可中断的更新
对于 webpack 来说, loader 和 plugin 可以算是需求程度最为广泛的配置项了。但是呢,单单止步于配置可能还不够。如果我们自己有时候想要 diy 一个需求,但是 webpack 又没有相关的 loader 和 plugin 。那这个时候我们可能就得开始造点轮子来供给自己使用了。
新人们找个好玩的来练练手如何?虽然不是专职搞web的做过几个代码简陋,只有几十行然而做出来的感觉甚是开心,也希望各位新入门的开发者可以拿去做个小游戏玩玩看。
作为前端最常用的js库之一,熟悉react源码成了高级或资深前端工程师必备的能力,如果你不想停留在api的使用层面或者想在前端技能的深度上有所突破,那熟悉react源码将是你进步的很好的方式。
为了让提升用户体验,微软在IE5中引入了XMLHttpRequest, 简称XHR,XMLHttpRequest的出现,可以让网页无需刷新,即可从服务器获取最新的内容,这项技术也就是所谓的Ajax
webpack插件没什么好说的,用过的都知道怎么配置,只是不知道内部怎么执行。今天学一学插件的一些机制,手写一个插件并不难。
本文从「全栈」的角度,通过训练模型、部署成后端服务、前端页面开发等内容的介绍,帮大家更快地把深度学习的模型应用到实际场景中。
大部分安卓用户的手机里是没有自带画板功能的,而在近期网课盛行之时,一个随手可用的手写面板,无论是在写笔记方面,还是在辅助授课方面,一个小画板就体现出了很大的作用。那么这个功能应该如何来实现呢?
因为喜欢代码,喜欢编程,而坚持下来的学习。想起五六年前智能手机刚兴起的时候,我就在各种论坛(代表:某葫*侠),各种 Q 群混着跟着搞各种锁机、破解、刷机一系列技术,手机编程、iapp(手机编程软件,这个应该有不少人都知道吧?)、IDEA(一个手机上学习 Java 的软件)。 这个时候的自己虽然很喜欢编程,但真正让我决定学习编程的其实还是 2016 年因为盗版二被迫停更的火影战记(童年回忆了啊),那时就决定自己以后要学编程,然后做出续版。。。不过后来东倒西歪的直到现在学了前端....而不是安卓和 JAVA 开发,哈哈哈哈哈哈哈。
防抖动和节流本质是不一样的。防抖动是将多次执行变为最后一次执行,节流是将多次执行变成每隔一段时间执行
event bus既是node中各个模块的基石,又是前端组件通信的依赖手段之一,同时涉及了订阅-发布设计模式,是非常重要的基础。
对于流行的MVVM,本着了解一下的原理,因为自身是做后台的,对js的掌握一般,首先我们要对MVVM有个基本认识,MVVM是Model-View-ViewModel 的缩写,一张图带你了解 a.png
在上面的示例中,我们通过 output.filename 和 output.path 属性,来告诉 webpack bundle 的名称,以及我们想要 bundle 生成(emit)到哪里。可能你想要了解在代码最上面导入的 path 模块是什么,它是一个 Node.js 核心模块,用于操作文件路径。
下面这个demo_13在react17和react16中有什么不同吗?代码也很简单,模拟一个modal框,点击显示出现,点击其他地方,相当于点击了mask,modal消失,因为react事件都是委托到上层,所以需要在handleClick阻止冒泡,这样点击显示的时候不会触发document上的事件回调,导致modal无法显示。但是在react16上发现这样做还是不行,需要调用e.nativeEvent.stopImmediatePropagation()才能实现,而react17上没什么影响
本文是手写Vue-Router的第一篇,主要是对Vue-Router的知识储备,为后面的手写做准备。
前端开发语言有哪些?需要掌握什么?通常前端开发在基础阶段掌握html+css+js+jq;框架语言阶段掌握vue+react+小程序;后端掌握nodejs+mongdb+云开发;UI框架阶段熟悉常见的有elementui+ang系列。
领取专属 10元无门槛券
手把手带您无忧上云