
前端知识点整理
Gorgio_Liu
道阻且长,行则将至
展开
-
将多个数组合并为一个
将多个数组合并为一个// 首先定义一个接收合并之后值的数组let arrayAll = [];// 使用concat 这个方法进行多个数组的合并arrayAll = arrayAll.concat([1,2,3], [4,5,6], [7,8,9])console.log(arrayAll)// [1, 2, 3, 4, 5, 6, 7, 8, 9]...原创 2022-05-13 10:42:32 · 709 阅读 · 0 评论 -
Js的map方法是否会改变原数组?
map()为操作数组的一种方法,官方文档显示:map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。map() 方法按照原始数组元素顺序依次处理元素。注意: map() 不会对空数组进行检测。注意: map() 不会改变原始数组。官方文档中的说法并非十分准确,在实际的开发中需要依据不同的数据做不同的处理。当数组为基础类型时原数组不变: let array=[1,2,4,6] let newArray=array.map((item) =原创 2022-03-02 23:44:10 · 2631 阅读 · 0 评论 -
vuex浅谈
浅谈vuex原创 2020-04-23 22:06:15 · 170 阅读 · 0 评论 -
前端面试(一)
2020年1月4日面试问题梳理:1、Vue相对于原生JS的优势在哪里认知现代JS框架存在的根本原因是保持UI与状态同步核心思想数据驱动 DOM核心功能数据双向绑定组件(Component)核心概念异步更新队列el: el用于指定一个页面中已存在的DOM元素来挂载Vue实例。beforeDestroy生命周期:实例销毁之前调用。主要解绑一些使用addEventListener...原创 2020-01-05 23:37:05 · 365 阅读 · 0 评论 -
如何实现页面包含
项目中,习惯把多个页面中完全一样的内容,单独提取出来作为一个独立的文件(如header.html、footer.html),凡是需要此文件的页面,引入该页面即可。页面包含可以采用多种方案:1、利用Web服务器的SSI命令:客户端请求一个页面,服务器一次返回多个页面 — 需要修改Web服务器配置文件。2、使用服务器端动态语言提供的页面包含函数:如PHPinclude(‘header.p...原创 2019-12-20 16:37:02 · 385 阅读 · 0 评论 -
AngularJS知识点整理
概述是一个JS框架,适用于以数据的操作为主的SPA项目AngularJS的四大特性:采用MVC设计模型 双向数据绑定 依赖注入 模块化设计MVC模型Model:业务数据,是保存在特定的范围的变量View:即业务数据的呈现,HTML+ng指令Controller:负责操作业务数据双向数据绑定:方向1:Model绑定到V...原创 2019-12-20 13:40:53 · 252 阅读 · 0 评论 -
JavaScript基本面试题
JS的几条基本规范:1、不要在同一行声明多个变量2、请使用===/!==来比较true/false或者数值3、使用对象字面量替代new Array这种形式4、不要使用全局变量5、Switch语句必须带有default分支6、函数不应该有时候有返回值,有时候没有返回值7、For循环必须使用大括号8、IF语句必须使用大括号9、for-in循环中的变量应该使用var关...原创 2019-12-17 00:22:44 · 190 阅读 · 0 评论 -
var、let、const之间的区别
var声明变量可以重复声明,而let不可以重复声明var是不受限于块级的,而let是受限于块级var会与window相映射(会挂一个属性),而let不与window相映射var可以在声明的上面访问变量,而let有暂存死区,在声明的上面访问变量会报错const声明之后必须赋值,否则会报错const定义不可变的量,改变了就会报错const和let一样不会与window相映射、支...原创 2019-12-12 10:55:44 · 324 阅读 · 0 评论 -
如何解决跨域问题
跨域的概念:协议、域名、端口都相同才同域,否则都是跨域解决跨域问题:1、使用JSONP(json+padding)把数据内填充起来2、CORS方式(跨域资源共享),在后端上配置可跨域3、服务器代理,通过服务器的文件能访问第三方资源...原创 2019-12-10 23:45:38 · 152 阅读 · 0 评论 -
less、sass、styus三者的区别
变量Sass声明变量必须是【$】开头,后面紧跟变量名和变量值,而且变量名和变量值需要使用冒号:分隔开。Less声明变量用【@】开头,其余等同Sass。Stylus中声明变量没有任何限定,结尾的分号可有可无,但变量名和变量值之间必须要有【=】。作用域Sass:三者最差,不存在全局变量的概念Less:最近的一次更新的变量有效,并且会作用于全部的引用!Stylus:Sass的处理方式和St...原创 2019-12-10 23:31:42 · 537 阅读 · 0 评论 -
组件化和模块化
组件化为什么要组件化开发有时候页面代码量太大,逻辑太多或者同一个功能组件在许多页面均有使用,维护起来相当复杂,这个时候,就需要组件化开发来进行功能拆分、组件封装,以达到组件通用性,增强代码可读性,维护成本也能大大降低。组件化开发的优点很大程度上降低系统各个功能的耦合性,并且提高了功能内部的聚合性。这对前端工程化及降低代码的维护来说,是有很大的好处的,耦合性的降低,提高了系统的伸展性,降低了...原创 2019-12-09 00:03:26 · 359 阅读 · 0 评论 -
Ajax浅谈
如何创建一个Ajax(1)创建XMLHttpRequest对象,也就是创建一个异步调用对象(2)创建一个新的HTTP请求,并指定该HTTP请求的方法、URL及验证信息(3)设置响应HTTP请求状态变化的函数(4)发送HTTP请求(5)获取异步调用返回的数据(6)使用JavaScript和DOM实现局部刷新同步和异步的区别:同步:浏览器访问服务器请求,用户看得到页面刷新,重新发请求...原创 2019-12-04 14:32:05 · 177 阅读 · 0 评论 -
对this对象的理解
1、this总是指向函数的直接调用者(而非间接调用者)2、如果有new关键字,this指向new出来的那个对象3、在事件中,this指向触发这个事件的对象,特殊的是,IE中的attachEvent中的this总是指向全局对象Window...原创 2019-12-04 13:26:26 · 400 阅读 · 0 评论 -
mouseover和mouseenter的区别
mouseover:当鼠标移入元素或其子元素都会触发事件,所以有一个重复触发,冒泡的过程。对应的移除事件是mouseoutmouseenter:当鼠标移除元素本身(不包含元素的子元素)会触发事件,也就是不会冒泡,对应的移除事件是mouseleave...原创 2019-12-04 13:22:26 · 208 阅读 · 0 评论 -
HTML语义化
HTML语义化就是让页面内容结构化,它有如下优点1、易于用户阅读,样式丢失的时候能让页面呈现清晰的结构。2、有利于SEO,搜索引擎根据标签来确定上下文和各个关键字的权重3、方便其他设备解析,如盲人阅读器根据语义渲染网页4、有利于开发和维护,语义化更具可读性,代码更好维护,与CSS3关系更和谐如:代表头部代表超链接区域定义文档主要内容可以代表文章、博客等内容通常表示侧边栏或嵌入内容...原创 2019-12-04 02:14:09 · 193 阅读 · 0 评论 -
vue.js项目目录结构详解
1、 build文件夹:webpack相关配置文件,一般情况下不需要自己配置1.1 build.js:是我们完成项目之后需要运行的, 可以将我们的项目文件打包成静态文件,存放在项目根目录的dist文件夹中(现在目录里还没有这个文件夹,build的时候会自动生成)。1.2 check-versions.js:主要是检查一些所依赖的工具的版本是否适用,如nodejs、npm,若版本太低则会提示...原创 2019-11-22 16:58:07 · 2568 阅读 · 0 评论 -
了解BFC
BFC:全称(Block Formatting Contexts)块级格式化上下文BFC触发的条件:1、浮动元素float:left / right 或 inherit,但不能用none2、定位元素position:absolute / fixed3、overflow:auto / scroll / hidden4、根据元素或包含根元素的元素;5、display:inline...原创 2019-11-22 14:29:37 · 145 阅读 · 0 评论 -
前端中的A、B、C端解释
A端是开发界面。B端是商家界面。C端是用户界面。原创 2019-11-21 14:19:12 · 12287 阅读 · 1 评论