摘要:
我之前在上线自己的博客遇到过下面这些问题 为啥我的博客在开发阶段都没问题,部署到服务器之后访问不了除了/的页面 路由用hash模式就没问题,改成history就会有问题 公众号:前端南玖 不定时有送书活动,记得关注~ 每日推送前端技术文章~ 什么是路由 在Web开发过程中,经常会遇到『路由』的概念。 阅读全文
摘要:
前言 ❝ JavaScript常被描述为一种**「基于原型的语言」——每个对象都拥有一个「原型对象」,对象以其原型为模板、从原型继承属性和放法。原型对象也可能拥有原型,并从中继承属性和方法,一层一层以此类推。这种关系常被称为「原型链」**,它解释了为何一个对象会拥有定义在其他对象中的属性和方法。 准 阅读全文
摘要:
相信绝大多数同学都听过闭包这个概念,但闭包具体是什么估计很少有人能够说的很详细。说实话闭包在我们平时开发中应该是很常见的,并且在前端面试中闭包也是常见的重要考点,在学习闭包之前我们先来看看作用域与作用域链,因为这是闭包的关键。 作用域 简单来说,作用域是指程序中定义变量的区域,它决定了当前执行代码对 阅读全文
摘要:
this问题对于每个前端同学来说相信都不陌生,在平时开发中也经常能碰到,有时候因为this还踩过不少坑,并且this问题在面试题中出现的概率也非常高,我们一起来了解一下this的指向与call,apply,bind this的指向 ES5中的this 在ES5中,this一般指向函数调用时所在的执行 阅读全文
摘要:
1.在讨论浏览器与JavaScript之前,我们先来简单了解一下进程与线程 进程(process):资源分配的最小单位 进程是应用程序的执行实例,是操作系统进行资源分配和调度的一个独立单位。 线程(thread):CPU调度的最小单位 线程是进程内部的一个执行单元,是被系统独立调度和分派的基本单位。 阅读全文
摘要:
前端模块化 模块化的开发方式可以提高代码复用率,方便进行代码的管理。通常一个文件就是一个模块,有自己的作用域,只向外暴露特定的变量和函数。目前流行的js模块化规范有CommonJS,AMD,CMD,ES6模块系统 CommonJS nodeJS是commonJS规范的主要实践者,他有四个重要的环境变 阅读全文
摘要:
三句话道破原型链: 1.每个函数(类)天生自带一个属性prototype,属性值是一个对象,里面存储了当前类供实例调用的属性和方法 2.在浏览器默认给原型开辟的堆内存中有一个constructor属性:存储的是当前类本身(注意:自己开辟的堆内存中默认没有constructor属性,需要自己手动添加) 阅读全文
摘要:
一、前言 如今的互联网时代也称移动互联网时代,基本上每个人每天都会花费大量时间在移动设备上,早期的移动端应用大都使用原生开发(android,ios),而现在的移动开发技术选型上基本都是混合开发(Hybrid),混合开发是一种开发模式,指使用多种开发模型开发App,通常会涉及到两大类技术:原生Nat 阅读全文
摘要:
作为一名开发人员,工作之外的时间总是在学习新事物。作为前端开发人员必须知道一些使我们的代码如何更优雅,工作更轻松的技巧,让自己的代码写的更加高大上,下面这些技巧获取可以帮助到你。 1. 多个条件判断 // longif( x 'a' || x 'b' || x 'c' || x 'd'){ // t 阅读全文
摘要:
什么是前端工程化? 虽然前端工程化的概念兴起还没几年的时间,但是对于“工程化”这个词并不是一个新鲜词了,在其他软件开发的领域很早就已经有了高度的工程化,例如Web服务端开发。只不过那个时候,前端工程师并没有工程化的意识,也没有必要对前端进行工程化的操作,毕竟在那个时期,前端的开发工作只能算是整个项目 阅读全文
摘要:
1. 如何在ES5环境下实现let 这个问题实质上是在回答let和var有什么区别,对于这个问题,我们可以直接查看babel转换前后的结果,看一下在循环中通过let定义的变量是如何解决变量提升的问题 babel在let定义的变量前加了道下划线,避免在块级作用域外访问到该变量,除了对变量名的转换,我们 阅读全文
摘要:
问题1:以下代码在浏览器控制台上会打印什么? var a = 10; function foo() { console.log(a); // ?? var a = 20; } foo(); 问题2:如果我们使用 let 或 const 代替 var,输出是否相同 var a = 10; functi 阅读全文
摘要:
1.状态查看: git status 可以查看工作区,暂存区的状态 untracked 在暂存区没有该文件 modified 修改过 staged 使用git add 暂存过 2.添加操作: git add [file name] 将工作区的新建/修改添加到暂存区 3.提交操作 git commit 阅读全文
摘要:
animate.css源码,方便开发使用。 /*! 动画属性: animation-name:动画名称 animation-duration:动画时间 animation-timing-function:动画的速度曲线 animation-delay:动画延迟 animation-iteration 阅读全文
摘要:
在Vue中,不同的选项有不同的合并策略,比如 data,props,methods是同名属性覆盖合并,其他直接合并,而生命周期钩子函数则是将同名的函数放到一个数组中,在调用的时候依次调用 在Vue中,提供了一个api, Vue.config.optionMergeStrategies,可以通过这个a 阅读全文