9种JavaScript数组去重的高阶方法 一般的方法此处也不列举了,还是有很多的,如双层循环判断是否相等,或新建数组比较再push等等,需要注意的是,使用splice方法移除元素时,有可能会导致数组塌陷问题,需要处理一下。本文中介绍了多种数组去重的方法,使用了较多的高阶方法及API,并给出相应解释及语法,还有其他多种组合调用方式,原理逻辑其实都差不多,其中for循环可以与forEach方法相互转换,因此此处便不再一一列举,大家如果有更好的算法,可以留言给我,虚心请教!!给定一个数组 [1,2,2,4,null,null,‘3’,‘abc’,3,
一文搞懂 this、apply、call、bind this的指向“this” 关键字允许在调用函数或方法时决定哪个对象应该是焦点。在JavaScript中this可以是全局对象、当前对象或者任意对象,这完全取决于函数的调用方式,this 绑定的对象即函数执行的上下文环境。在 ES5 中,其实 this 的指向,始终坚持一个原理:this 永远指向最后调用它的那个对象,正是由于调用function的对象不同,才导致了this的指向不同// e.g.1var test = { a: 5, b: 6, sum: function (a, b
Vue 路由组件传参的 8 种方式 我们在开发单页面应用时,有时需要进入某个路由后基于参数从服务器获取数据,那么我们首先要获取路由传递过来的参数,从而完成服务器请求,所以,我们需要了解路由传参的几种方式,以下方式同 vue-router@4。编程式路由传参除了使用 <router-link> 创建 a 标签来定义导航链接,我们还可以借助 router 的实例方法,通过编写代码来实现。1. 通过 params 传递路由配置路径参数 用冒号 : 表示。const routes = [ // 动态段以冒号开始 {
工作中有用的javaScript代码块 1.随机ID生成当你在进行原型设计并需要唯一的id时,这可以成为你的首选功能。const a = Math.random().toString(36).substring(2);console.log(a)----------------------------72pklaoe38u2.生成范围内的随机数在很多情况下,我们需要在一个范围内生成一个随机数。Math.random函数可以帮助我们生成随机数,然后将其转换为所需的范围。max = 20min = 10var a = Math.
Vue 性能优化方式及原理 我们在使用 Vue 或其他框架的日常开发中,或多或少的都会遇到一些性能问题,尽管 Vue 内部已经帮助我们做了许多优化,但是还是有些问题是需要我们主动去避免的。我在我的日常开中,以及网上各种大佬的文章中总结了一些容易产生性能问题的场景以及针对这些问题优化的技巧,这篇文章就来探讨下,希望对你有所帮助。使用v-slot:slotName,而不是slot=“slotName”v-slot 是 2.6 新增的语法,具体可查看:Vue2.6,2.6 发布已经是快两年前的事情了,但是现在仍然有不少人仍然在使用slo
2-3年前端经典面试题 webpack是做什么用的?在发送请求时对请求进行终止?单点登录,多点登录的理解?js,jq,H5C3,浏览器seo优化,跨浏览器解决问题?(IE即将落下帷幕)restful和普通接口有什么区别?ES6的导入导出的了解?js模块闭包的理解及应用场景,内存泄漏的理解及应对方法?原型链?js数组去重,求和,数组字符串类型转换,数据类型判断typeOf等,join,split方法等?手写ajax请求过程?ajax和axios、fetch的区别?回调函数,async await,Pro.
一文梭穿Vuex、Flux、Redux、Redux-saga、Dva、MobX 不管是Vue,还是 React,都需要管理状态(state),比如组件之间都有共享状态的需要。什么是共享状态?比如一个组件需要使用另一个组件的状态,或者一个组件需要改变另一个组件的状态,都是共享状态。父子组件之间,兄弟组件之间共享状态,往往需要写很多没有必要的代码,比如把状态提升到父组件里,或者给兄弟组件写一个父组件,听听就觉得挺啰嗦。如果不对状态进行有效的管理,状态在什么时候,由于什么原因,如何变化就会不受控制,就很难跟踪和测试了。如果没有经历过这方面的困扰,可以简单理解为会搞得很乱就对了。在软件开
初始化项目+准备工作(更新版) 一 : vue 是 单文件组件导 : 之前注册组件有什么缺点 ? 1- 缺乏语法高亮 2-格式不好整体 3-没有专门的写css代码等等参考 : vue => 工具 => 单文件组件什么是单文件组件 ? 后缀为 .vue 的文件单文件组件的三个组成部分 (代码块 : scaffold 自动提示)template (模板结构)script 组件的代码逻...
02-webpack步骤-改造 webpack 使用步骤 (最新版)webpack 第一阶段命名初始化阶段项目名不能有汉字,不能取名叫 webpack创建项目名称并生成 package.json, 命令 : npm init -y安装 : npm i -D webpack webpack-cliwebpack : 是 webpack 工具的核心包webpack-cli : 提供了一些在终端中使用的命令-...
01-webpack介绍-改造 Webpackwebpack官网webpack中文网一 : Webpack 介绍Webpack 是什么?? (面试)前端模块化打包(构建)工具WebPack可以看做是模块打包机:它做的事情是,分析你的项目结构,找到JavaScript模块、其它的一些浏览器不能直接运行的拓展语言(Scss,less等)以及新语法,并将其转换和打包为合适的格式供浏览器使用。为什要使用WebPac...
Vue-router基础知识 单页面应用程序SPA : Single Page Application 单页面应用程序MPA : Multiple Page Application 多页面应用程序单页 web 应用就是只有一个 web 页面的应用,是加载单个 HTML 页面,并在用户与应用程序交互时, 动态更新该页面的 web 应用程序区别对于传统的多页面应用程序来说, 每次请求服务器返回的...
git-命令大全 版本控制系统为什么要有版本控制系统在开发过程中,经常需要对一个文件进行修改甚至删除,但是我们又希望能够保存这个文件的历史记录,如果通过备份,那么管理起来会非常的复杂。什么是版本控制系统版本控制系统(Version Control System):是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。版本控制系统不仅可以应用于软件源代码的文本文件,而且可以对任何类型的文...
Vue基本语法day06 一. 通信机制1. 父传子: 1.1 通过属性,父组件将数据传递给子组件 :msg = 'pmsg' 1.2 子组件通过 props 配置项,指定一下要接收的数据 props : [ 'msg' ]2. 子传父: 2.1 父组件准备一个方法 methods: { pfn(res) { console.log('父组件接收到的 : ', res) } } 2.2 通...
Vue基本语法day05 组件 (重难点)一 : 认识组件什么是组件: 组件的出现,就是为了拆分Vue实例的代码量的,能够让我们以不同的组件,来划分不同的功能模块,将来我们需要什么样的功能,就可以去调用对应的组件即可 (将一个完整的页面,抽离成一个个独立的组件,最终,通过这一个个独立组件完成整个的页面(项目)的功能)组件化和模块化的不同:- 模块化: 是从代码逻辑的角度进行划分的,方便代码分层开发,保证每个功能模...
Vue基本语法day04 一. ES6 中的默认值表示方式: test() function test(num = 20) { // es5 // num = num || 10 // es6 // (num = 20) console.log(num) }============================================================...
Vue2.0知识路线图 day01: 1. vue 介绍 2. MVC + MVVM 区别与对应优势 3. vue基本使用及注意点 4. {{}} 插值表达式 5. v-model (数据双向绑定)的使用及内在原理 6. v-text 和 v-html 7. v-bind 的使用(数据单向绑定, M(数据层) ==> V(视图层)) 8. v-on的使用(注册事件/绑定事件) 9. v-for...
Vue基本语法day03 data 变化,引发的事情?data 里的数据发生了变化,指令会重新计算data 里的数据发生了变化,表达式会重新计算<div id="app"> <h1>{{ num }}</h1> <h1 v-show="getShow()">w shi h1</h1> <h1>{{ num >= 105 ? ...
Vue基本语法day02 v-if 和 v-show 切换元素的隐藏和显示格式: v-if / v-show='布尔值', true => 元素显示, false => 元素就隐藏相同点: 都可以切换元素的显示和隐藏不同点: 实现的方法不同v-if : 显示 : 创建节点,,,隐藏 : 删除节点 通过不断的创建和删除节点来切换v-show : 显示 : display: bloc...
Vue基本语法day01 二 : Vue 介绍vue 中文网 https://cn.vuejs.org/github 下载地址 https://github.com/vuejs/vueVue.js (读音 /vju:/ view)渐进式 JavaScript 框架4.1 渐进式 :小型项目 就可以使用 vue 就高度了随着页面的复杂程序提高,就要学习 vue-rouer 来管理更多的页面再随着项目的数据越...