01 2019 档案
摘要:javaScript有三种数据存储方式 javaScript有三种数据存储方式,分别是: sessionStorage localStorage cookier 相同点:都保存在浏览器端,同源的 不同点: ①传递方式不同 cookie数据始终在同源的http请求中携带(即使不需要),即cookie在
阅读全文
摘要:JS 中深拷贝的几种实现方法1、使用递归的方式实现深拷贝 2、通过 JSON 对象实现深拷贝 JSON对象实现深拷贝的一些问题 * 无法实现对对象中方法的深拷贝 3、通过jQuery的extend方法实现深拷贝 4、Object.assign()拷贝 5、lodash函数库实现深拷贝 参考:htt
阅读全文
摘要:实现一个函数clone,可以对JS中的5种数据类型(Number、String、Object、Array、Boolean)进行值复制
阅读全文
摘要:etTimeout来实现setInterval 1 <script type="text/javascript"> 2 function interval(func, w, t){ 3 var interv = function(){ 4 if(typeof t "undefined" || t--
阅读全文
摘要:原型链 原型链是指对象之间通过prototype链接起来,形成一个有向的链条。当访问一个对象的某个属性的时候, JavaScript引擎会首先查看该对象是否包含该属性。 如果没有,就去查找对象的prototype中是否包含。 以此类推,直到找到该属性或则找到最后一个对象。最后一个对象的prototy
阅读全文
摘要:Vue.js面试题整理 一、什么是MVVM? MVVM是Model-View-ViewModel的缩写。MVVM是一种设计思想。Model 层代表数据模型,也可以在Model中定义数据修改和操作的业务逻辑;View 代表UI 组件,它负责将数据模型转化成UI 展现出来,ViewModel 是一个同步
阅读全文
摘要:JS中的闭包 (1)、使用闭包主要是为了设计私有的方法和变量。 闭包的优点是: 可以避免全局变量的污染, 缺点是: 闭包会常驻内存,会增大内存使用量,使用不当很容易造成内存泄露。 (2)、闭包有三个特性: a、函数嵌套函数 b、函数内部可以引用外部的参数和变量 c、参数和变量不会被垃圾回收机制回收
阅读全文
摘要:JavaScript的数据类型? 基本数据类型:字符串 String、数字 Number、布尔Boolean 复合数据类型:数组 Array、对象 Object 特殊数据类型:Null 空对象、Undefined 未定义
阅读全文
摘要:a、 JSONP只能实现GET请求,而CORS支持所有类型的HTTP请求。 b、 使用CORS,开发者可以使用普通的XMLHttpRequest发起请求和获得数据,比起JSONP有更好的错误处理。 c、 JSONP主要被老的浏览器支持,它们往往不支持CORS,而绝大多数现代浏览器都已经支持了CORS
阅读全文
摘要:jquery中$.get()提交和$.post()提交有区别吗? 相同点:都是异步请求的方式来获取服务端的数据; 异同点: 1、请求方式不同:$.get() 方法使用GET方法来进行异步请求的。$.post() 方法使用POST方法来进行异步请求的。 2、参数传递方式不同:get请求会将参数跟在UR
阅读全文
摘要:js中数组增删查改unshift、push、pop、shift、slice、indexOf、concat、join
阅读全文
摘要:数组实例的 entries(),keys() 和 values() entries(),keys()和values(),用于遍历数组。它们都返回一个遍历器对象,可以用for...of循环进行遍历,唯一的区别是keys()是对键名的遍历、values()是对键值的遍历,entries()是对键值对的遍
阅读全文
摘要:Nuxt开发经验分享 本文章基于starter-template模板进行讲解,面向有vue-cli开发经验的宝宝 vue init nuxt-community/starter-template Nuxt 官方文档 简单来说,Nuxt就是基于Vue的一个应用框架,采用服务端渲染,让你的SPA应用(V
阅读全文
摘要:几种遍历方式比较 for of 循环不仅支持数组、大多数伪数组对象,也支持字符串遍历,此外还支持 Map 和 Set 对象遍历。 for in 循环可以遍历字符串、对象、数组,不能遍历 Set/Map forEach 循环不能遍历字符串、对象,可以遍历 Set/Map for of 循环不仅支持数组
阅读全文
摘要:.get(),eq()的区别
阅读全文
摘要:什么是JavaScript中的“闭包”?举一个例子。 闭包是一个内部函数,它可以访问外部(封闭)函数的作用域链中的变量。闭包可以访问三个范围内的变量;具体来说: (1)变量在其自己的范围内, (2)封闭函数范围内的变量 (3)全局变量。 看一下实例:
阅读全文
摘要:什么是NaN?它的类型是什么?如何可靠地测试一个值是否等于NaN? NaN属性表示“不是数字”的值。这个特殊值是由于一个操作数是非数字的(例如“abc”/ 4)或者因为操作的结果是非数字而无法执行的。 虽然这看起来很简单,但NaN有一些令人惊讶的特征,如果人们没有意识到这些特征,就会导致bug。 一
阅读全文
摘要:Set 与去重 ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。Set 本身是一个构造函数,用来生成 Set 数据结构。 数组去重 Array.from 方法可以将 Set 结构转为数组。我们可以专门编写使用一个去重的函数 字符去重 另外 Set 是如此强大,
阅读全文
摘要:跨域几种方式 一、什么是跨域 JavaScript出于安全方面的考虑,不允许跨域调用其他页面的对象。那什么是跨域呢,简单地理解就是因为JavaScript同源策略的限制, a.com 域名下的js无法操作 b.com或是 c.a.com 域名下的对象。 当协议、子域名、主域名、端口号中任意一个不相同
阅读全文
摘要:JS系列教程(数据类型)【1】
阅读全文
摘要:Vue常用的GitHub项目(Demo案例) 应用实例
阅读全文
摘要:vue如何自定义一个过滤器 html代码: JS代码: 全局定义过滤器
阅读全文
摘要:vuejs 入门知识点 1、active-class 是哪个组件的属性?嵌套路由怎么定义 (1)、active-class 是 vue-router 模块的 router-link 组件的属性 (2)、使用 children 定义嵌套路由 2、怎么定义 vue-router 的动态路由? 怎么获取传
阅读全文
摘要:现在有一个函数A和函数B,请你实现B继承A
阅读全文
摘要:vue-router的创建
阅读全文
摘要:Cookie、sessionStorage、localStorage的区别 共同点:都是保存在浏览器端,并且是同源的 Cookie:cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递。而sessionStorage和localStorage不会自动
阅读全文
摘要:js怎么控制一次加载一张图片,加载完后再加载下一张 (1)方法1 (1)方法2
阅读全文
摘要:图片的懒加载和预加载 预加载:提前加载图片,当用户需要查看时可直接从本地缓存中渲染。 懒加载:懒加载的主要目的是作为服务器前端的优化,减少请求数或延迟请求数。 两种技术的本质:两者的行为是相反的,一个是提前加载,一个是迟缓甚至不加载。懒加载对服务器前端有一定的缓解压力作用,预加载则会增加服务器前端压
阅读全文
摘要:1、什么是跨域? 由于浏览器同源策略,凡是发送请求url的协议、域名、端口三者之间任意一与当前页面地址不同即为跨域。存在跨域的情况: 网络协议不同,如http协议访问https协议。 端口不同,如80端口访问8080端口。 域名不同,如qianduanblog.com访问baidu.com。 子域名
阅读全文
摘要:常用js方法封装 参考资源:https://me.csdn.net/Bs__Q 作者:前端很忙
阅读全文
摘要:原生ajax的请求过程 创建全平台兼容的XMLHttpRequest对象: Ajax请求数据的过程:
阅读全文
摘要:正则表达式合集 一.校验数字 数字:^[0-9]*$ n位的数字:^\d{n}$ 至少n位的数字:^\d{n,}$ m-n位的数字:^\d{m,n}$ 零和非零开头的数字:^(0|[1-9][0-9]*)$ 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$
阅读全文
摘要:JavaScript-原型&原型链&原型继承 JavaScript的原型是一个重要的知识点,很多扩展应用都是从原型出发的。要说原型,我们先简单说一下函数创建过程。上一篇文章用闭包实现类和继承中用的是原型继承,今天就讲一讲原型继承。更多继承在后面的文章中更新。 函数创建过程 1.创建一个对象(有con
阅读全文
摘要:前端学习大全-1(收藏) 特意对前端学习资源做一个汇总,方便自己学习查阅参考,和好友们共同进步。 内容精简 https://xiaohuazheng.github.i... 资源这么多,多看看多学习再总结肯定是好的。多读读就算看重了不算浪费时间,毕竟一千个读者就有一千个林黛玉,还有温故而知新,说不定
阅读全文
摘要:JavaScript中的this陷阱的最全收集--没有之一 JavaScript中的this陷阱的最全收集--没有之一 博客的标题是《JavaScript中的this陷阱的最全收集--没有之一》,很显然这篇博客阐述的是this。相信做过JavaScript开发的人都遇到过不少this的陷阱,我自己本
阅读全文
摘要:Javascript的jsonp原理 首先JSON是一种基于文本的数据交换方式,或者叫做数据描述格式 当一个网页在请求JavaScript文件时则不受是否跨域的影响,凡是拥有”src”这个属性的标签都拥有跨域的能力,比如<script>、<img>、<iframe> 所以我们这里运用了script标
阅读全文
摘要:promise的弊端 promise彻底解决了callback hell,但也存在以下一些问题 延时问题(涉及到evnet loop)(http://www.ruanyifeng.com/blog/2014/10/event-loop.html)) promise一旦创建,无法取消 pending状
阅读全文
摘要:Vue.js经典开源项目汇总 Vue是什么? Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进式框架。与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计。Vue 的核心库只关注视图层,并且非常容易 Vue.js 的目标是通过尽可能简单的 API 实现响应的
阅读全文
摘要:1、什么是跨域? 由于浏览器同源策略,凡是发送请求url的协议、域名、端口三者之间任意一与当前页面地址不同即为跨域。存在跨域的情况: 网络协议不同,如http协议访问https协议。 端口不同,如80端口访问8080端口。 域名不同,如qianduanblog.com访问baidu.com。 子域名
阅读全文
摘要:or in 、Object.keys()以及Object.getOwnPropertyNames的区别 1、 for in 遍历对象,会将对象自身的属性以及原型上继承的属性都打印出来,但是不会获取不可枚举的属性。 2、Object.keys()遍历对象,获取对象自身可枚举属性。 3、Object.g
阅读全文
摘要:javascript深度克隆函数deepClone function deepClone(obj) { var _toString = Object.prototype.toString; // null, undefined, non-object, function if (!obj || ty
阅读全文
摘要:vue解决跨域问题 vue跨域解决方法和小总结 vue项目中,前端与后台进行数据请求或者提交的时候,如果后台没有设置跨域,前端本地调试代码的时候就会报“No 'Access-Control-Allow-Origin' header is present on the requested resour
阅读全文
摘要:ES6重点知识点总结(2) call和apply的作用是什么?区别是什么? call和apply的功能基本相同,都是实现继承或者转换对象指针的作用; 唯一不通的是前者参数是罗列出来的,后者是存到数组中的; call或apply功能就是实现继承的;与面向对象的继承extends功能相似;但写法不同;
阅读全文
摘要:(回答一:) (1)、js的this指向是不确定的,也就是说是可以动态改变的。call/apply 就是用于改变this指向的函数,这样设计可以让代码更加灵活,复用性更高 (2)、this 一般情况下,都是指向函数的拥有者。 (3)、在函数自执行里,this 指向的是 window 对象。 扩展:关
阅读全文
摘要:JavaScript中的常见解决跨域的方法 1、 通过jsonp跨域 1.)原生实现: 2、 document.domain + iframe跨域 此方案仅限主域相同,子域不同的跨域应用场景。 1.)父窗口:(http://www.domain.com/a.html) 2.)子窗口: (http:/
阅读全文
摘要:JavaScript 有哪几种创建对象的方式? javascript创建对象简单的说,无非就是使用内置对象或各种自定义对象,当然还可以用JSON;但写法有很多种,也能混合使用。 (1)对象字面量的方式 person={firstname:"Mark",lastname:"Yun",age:25,ey
阅读全文
摘要:GitHub上搭建hexo博客 安装GitGit:主要用于上传博客页面到github和命令操作安装NodeNode.js:Hexo的运行环境安装HexoHexo:博客程序打开安装Git后的生成的右键菜单Git Bash,输入如下代码安装Hexo: 等待安装完成即可 生成本地博客 首先切换到你需要创建
阅读全文
摘要:关于Vue实例的生命周期(2) 钩子函数触发事件 beforeCreate created beforeMount mounted beforeUpdate updated 当这个钩子被调用时,组件 DOM 已经更新,所以你现在可以执行依赖于 DOM 的操作。然而在大多数情况下,你应该避免在此期间更
阅读全文
摘要:JS中的五种去重方法 第一种方法: 第二种方法: 第三种方法: 第四种方法: 第五种方法:优化遍历数组法 思路:获取没重复的最右一值放入新数组 * 方法的实现代码相当酷炫,* 实现思路:获取没重复的最右一值放入新数组。* (检测到有重复值时终止当前循环同时进入顶层循环的下一轮判断)*/
阅读全文
摘要:小白入门学习vue和vue实例,vue总结 这就是我脑海中的 Vue 知识体系; 一句话概况了 Vue 通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件 Vue 的创建 我们的学习目的肯定不止于创建简单的 Vue 实例;而是用它去实现更加多变的功能需求;那我们需要进一步去学习 Vue-r
阅读全文
摘要:JavaScript对象的几种创建方式 (1) 工厂模式 function Parent(){ var Child = new Object(); Child.name="欲泪成雪"; Child.age="20"; return Child; }; var x = Parent(); 引用该对象的
阅读全文
摘要:DOM操作怎样添加、移除、移动、复制、创建和查找节点? (1)创建新节点 createDocumentFragment() //创建一个DOM片段 createElement() //创建一个具体的元素 createTextNode() //创建一个文本节点 (1)创建新节点 createDocum
阅读全文
摘要:拷贝拷贝引用,共享内存 深拷贝拷贝实例,不共享内存 1. 浅拷贝:当一个对象拷贝另一个对象的数据时,只要一个对象的数据发生改变时,另一个对象的数据也会发生改变,因为浅拷贝拷贝的是引用的地址 实现方式: ES6 Object.assign()与扩展运算符...,两者都是只有是多层时才是浅拷贝,如果是一
阅读全文
摘要:JS继承的实现方式 既然要实现继承,那么首先我们得有一个父类,代码如下: 1、原型链继承 核心: 将父类的实例作为子类的原型 特点: 缺点: 2、构造继承 核心:使用父类的构造函数来增强子类实例,等于是复制父类的实例属性给子类(没用到原型) 特点: 缺点: 3、实例继承 核心:为父类实例添加新特性,
阅读全文
摘要:jquery 封装在 ajax方法 里面的jsonp jsonp跨域的原理 1:使用script 标签发送请求,这个标签支持跨域访问 2:在script 标签里面给服务器端传递一个 callback 3:callback 的值对应到页面一定要定义一个全局函数(为什么是全局?因为服务端接收到callb
阅读全文