web前端进阶篇(一 )JS
1谈谈变量提升当执行JS代码时,会生成执行环境,只要代码不是写在函数中的,就是在堆栈执行环境中,函数中的代码会产生函数执行环境,仅此两种执行环境。b() // call b console.log(a) // undefined var a = 'Hello world' functio
浅谈深拷贝与浅拷贝?深拷贝几种方法。
深拷贝和浅拷贝的区别?如何区分深拷贝与浅拷贝,大白话来说,就是假设B复制了A,当修改A时,看B是否会发生变化,如果B也跟着变了,说明这是浅拷贝,拿人手短,如果B没变,那就是深拷贝,自食其力。先看一个例子:let a = [0, 1, 2, 3, 4], b = a; console
使用React构建简单项目步骤(Mac 环境)
1.准备安装环境2.create-react-app 工具3.目录说明4.增加一个新的 React组件5.弹出配置文件React是一个 JavaScript语言的工具库,在这个 JavaScript工具铺天盖地的时代,没 有意外,你需要安装 Node.js, React 本身并不依赖于 Node.js,但是我们开发中用到的诸 多工具需要 Node.js 的支持 。在 Node.js 的官网(htt
基于vue-cli的webpack打包优化实践及探索
转眼已经是2019年,短短三四年时间,webpack打包工具成为了前端开发中必备工具,曾经一度的面试题都是问,请问前端页面优化的方式有哪些?大家也是能够信手拈来的说出缓存、压缩文件、CSS雪碧图以及部署CDN等等各种方法,但是今天不一样了,可能你去面试问的就是,请问你是否知道webpack的打包原理,webpack的打包优化方法有哪些?所以该说不说的,笔者闲着没事研究了一下webpack的打包优化
JavaScript中错误正确处理方式,你对了吗?
JavaScript的事件驱动范式增添了丰富的语言,也是让使用JavaScript编程变得更加多样化。如果将浏览器设想为JavaScript的事件驱动工具,那么当错误发生时,某个事件就会被抛出。理论上可以认为这些发生的错误只是JavaScript中的简单事件。本文将会讨论客户端JavaScript中的错误处理。主要介绍JavaScript中的易犯错误、错误处理、异步代码编写等内容。下面就让我们一起
webpack loader配置全流程详解
前言1.主要目的为稍微梳理从配置到装载的流程。另外详解当然要加点源码提升格调(本人菜鸟,有错还请友善指正)2.被的WebPack打包的文件,都被转化为一个模块,比如import './xxx/x.jpg'或require('./xxx/x.js')。至于具体实际怎么转化,交由装载机处理3.下文会使用打字稿(劝退警告?)以方便说明有哪些选项和各个选项的值类型配置语法解
换个角度使用VUE过滤器
过滤器在Vue中的主要用于文本格式化,如小写转大小,日期格式化等操作。官方对这个功能介绍也很简单,不过确实很简单,就一个函数而已。但最近在做两款APP时,遇到一些特殊的需求。然后就对vue中的filter一些用法结合源码好好的梳理了下。下边我们以一个日期格式化展开讨论。本文配套的demo可以微信关注公众号【小院不小】回复vuefilter获得。1. 定义一个日期格式化函数都9012了,我们就采用
react16常见api以及原理剖析
Vue 与 React 两个框架的粗略区别对比Vue 的优势包括:模板和渲染函数的弹性选择简单的语法及项目创建更快的渲染速度和更小的体积React 的优势包括:更适用于大型应用和更好的可测试性同时适用于 Web 端和原生 App更大的生态圈带来的更多支持和工具相似之处React 与 Vue 有很多相似之处,React 和 Vue 都是非常优秀的框架,它们之间的相似之处多过不同之处,并且它们大部分最
前端神器:一行命令,React 组件转 Vue 组件!
基于目前React和Vue比较火,开发react-to-vue工具的目的是为了进一步提高组件的可复用用性,让组件复用不仅仅局限在一个框架里面简介对于react-to-vue工具,转化的是基本的react component,而不是全部的react应用。而基本react component的定义更多是基于props和state来渲染的组件,其中也可以包括发请求。本文先介绍两个框架的组件共性和不兼容的
搭建自己的React+Typescript环境
前言前阵子在自己学习React,最开始上手使用的creat-react-app来创建自己的项目,2版本之后的create-react-app已经支持了很多功能,比如sass、数据mock、typescript支持等等,也升级了相关依赖babel、webpack到一个最新的版本,具体可以参照Create React App 中文文档,但是它将项目的webpack配置等内容给藏起来了,想要自己配置的话
JS中一些重要的api实现, 巩固你的原生JS功底
在面试中,常常会遇到一些手写XXX之类的面试题,因此好好总结一下,对于巩固我们的原生js的基础是非常必要的。尽管在网上已经有了非常多的总结文章,但在我看来有一个普遍的问题,那就是把原理性的东西过于复杂化了。如果站在面试官的角度,他的目的是在最短的时间内考察出面试者对于JS语言的理解程度,但是在看了网站的诸多总结文章后我发现其中的代码有很大一部分是做意义不大的操作,比如实现一个简单的防抖,只要是核心
总结异步编程的六种方式
异步编程众所周知 JavaScript 是单线程工作,也就是只有一个脚本执行完成后才能执行下一个脚本,两个脚本不能同时执行,如果某个脚本耗时很长,后面的脚本都必须排队等着,会拖延整个程序的执行。以下为几种异步编程方式的总结,希望与君共勉。回调函数事件监听发布订阅模式PromiseGenerator (ES6)async (ES7)异步编程传统的解决方案:回调函数和事件监听初始示例:假设有两个函数,
看完这篇,你也能把 React Hooks 玩出花
本文中出现的部分名称映射:函数式组件 => Function Component类组件 => Class Component工具函数 => Util Function钩子 => React Hook初始值 => initialValue先讲概念React v
两个开源的 Spring Boot + Vue 前后端分离项目可以在线体验了
1. 也曾经上过线其实这两个项目当时刚做好的时候,我就把它们部署到服务器上了,以帮助小伙伴们更好的查看效果。但是那个是一台国外服务器,之所以购买国外服务器,主要是嫌国内备案麻烦,当然也有其他大家都懂的原因。国外服务器有方便的地方,同时也有很多不便,例如网络不稳,随时有失联的风险。所以我在 2018 年年初,虽然把这两个项目都部署在服务器上,但是很多小伙伴的访问体验都不好,主要还是网络的问题。后来一
JS调用时间的方法和计算
1、js 获取当前日期星期几getWeek(time) { let weekDay = ["周日","周一", "周二", "周三", "周四", "周五&qu
收下这波 JS 技巧,从此少加班
各种业务开发都离不开对数据的处理,然而遇到的很多数据都是不好处理的。这个时候就需要寻求搜索引擎的帮助。这种方法效率是非常低下的,而且根据作者的个性不能保证其对自己的口味。因此这篇文字包含了一份JS 常用业务函数手册,例如时间格式的处理、用的是哪个手机浏览器,手机号、邮箱的验证,以此来提高你的开发效率常用 JS 函数1.时间格式化界面展示的时间千变万化, 所以一个处理时间的函数,它的重要性就不言而喻
C/C++指针总结
基础部分关于内存内存含义:存储器:计算机的组成中,用来存储程序和数据,辅助CPU进行运算处理的重要部分。内存:内部存贮器,暂存程序/数据——掉电丢失 SRAM、DRAM、DDR、DDR2、DDR3。外存:外部存储器,长时间保存程序/数据—掉电不丢ROM、ERRROM、FLASH(NAND、NOR)、硬盘、光盘。内存是沟通CPU与硬盘的桥梁:暂存放CPU中的运算数据暂存与硬盘等外部存储器交换的数据物
GO语言能否取代C/C++呢?它们的区别在哪呢?
前言:随着网络技术的发展,有越来越多的编程语言出现,虽然老牌编程语言势头仍然强劲,不过也难以抵挡像GO语言这样的新锐。Go 是一种编译型语言,它结合了解释型语言的游刃有余,动态类型语言的开发效率,以及静态类型的安全性。很多人认为GO语言将会成为现代的支持网络与多核计算的语言。有不少小伙伴对于GO语言和C/C++的区别有些疑问,甚至会认为GO语言会取代C/C++。下面我们纤细说明下。GO语言和C/C
华为C++开发工程师面试总结整理,面试问题你能答上几个?含答案
前言:虽然全世界每个月都可能会出现新的语言,但从TIOBE世界编程语言排行榜的数据来看,从2009年到现在,C/C++一直都在前3甲中。不论历史的车轮如何滚滚向前,学好C/C++永远不会落后。面试官问的面试题:一面:1.先自我介绍;2.把自己简历上的项目描述一下,然后选一个你认为最主要的项目来说,以及项目遇到什么问题,用什么方法解决的;3.Nagle算法和tcp的拥塞控制。4.项目用过哪些数据库吗