js中遍历数组和对象的方法大全整理

2019-4-8 Jon js+jquery+ajax

目录 一、遍历数组的方法 1. for 2. while 和 do while 3. for of 4. for in 5. 达夫设备 6. forEach 和 map 7. filter、some、every、reduce、reduceRight 8. js库 jquery $.each 和 underscore _.each() 二、遍历对象的方法 1. for in 2. Object.keys(obj).forEach(function(key){console.log(key,obj[key]);}); 3. Object.getOwnPropertyN...

阅读全文>>

标签: 遍历

评论(0) 浏览(2985)

http状态码大全总结

2019-3-21 Jon html+css

在前端日常开发过程中,调用后端接口,发起请求的时候就会碰到后端返回的状态码,这篇文章就将后端可能返回的所有状态码含义记录一下,以便查询。 常见状态码 200 - 请求成功 302 - 重定向 401 - 权限不足 403 - 禁止访问要求 SSL 404 - 请求的网页不存在 500 - 服务器内部错误 503 - 服务器不可用 1开头的状态码 100 - (继续) 请求者应当继续提出请求。服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。 101 - (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。 2开头的状态码(成功) 200...

阅读全文>>

标签: http

评论(0) 浏览(2436)

angular 中的路由守卫CanActivate、CanDeactivate、Resolve

2019-2-26 Jon js库

一、路由守卫 当用户满足一定条件才被允许进入或者离开一个路由。 路由守卫场景: 1、某些路由用户未登录无法进入(登录) 2、某些路由用户没权限无法进入(权限) 3、不可跳过中间步骤直接访问某一步骤路由(注册流程、步骤条) 4、当用户未执行保存操作而试图离开当前导航时提醒用户(防止误操作) 5、用户进入某路由前获取该路由需要的数据(提升用户体验) Angular提供了一些钩子帮助控制进入或离开路由。这些钩子就是路由守卫,可以通过这些钩子实现上面场景。 CanActivate: 是否允许进入某路由(场景1、2、3) CanDeactivate: 是否允许离开某路由(场景4)...

阅读全文>>

标签: 路由

评论(0) 浏览(4164)

.md文件的编写与预览

2019-2-15 Jon 其他

.md文件又叫做 markdown 文件 一般前端做过框架项目或者逛过 github 的都知道有个项目说明文件README.md 此文件主要可以记录一些项目关键信息和使用文档及流程 这个文件就是 markdown 文件 其实 markdown 文件远不止用在项目中 也可以快速写出很漂亮的文档文件,用于各个方面 这篇文章就介绍下如何编写和预览这个.md文件格式 编写一个 .md 文件 创建一个.md格式文件 .md 文件编写工具     mac上可以使用 Typora 非常好用能看到实时效果    &...

阅读全文>>

标签: md

评论(0) 浏览(3731)

HTML5桌面通知知识点总结

2019-1-28 Jon html+css

H5 Web Notification桌面推送消息 特点     可以直接脱离浏览器,在桌面提醒(类似微信及系统提醒)。     不能直接本地运行,需要服务器     需要用户允许方可使用     win系统提醒在右下角,mac提醒在右上角 浏览器兼容性     Firefox (支持)     Chorome (支持)  ...

阅读全文>>

评论(0) 浏览(2612)

前端mvvm框架中双向绑定的原理和实现

2019-1-24 Jon js库

1、通过Object.defineProperty(obj, prop, descriptor)劫持对象的属性读写,其中obj是要在上面定义属性的对象,prop是要定义或修改的属性名称,descriptor是属性的描述符。描述符中可选get和set键值。get是属性的getter方法,返回属性值;set为setter方法,接受唯一参数,并将该参数的值赋值给属性,get和set的默认值均为undefined。 2、双向绑定的简单实现。 <input type="input" id="input"> <span id="show">&...

阅读全文>>

标签: 底层 框架

评论(0) 浏览(2779)

解决index.html缓存问题

2019-1-8 Jon html+css

一般项目发版后前端静态文件会有缓存问题, 不强制刷新很难解决, 但是用户不会去强制刷新, 这就需要我们开发人员在配置方面解决浏览器缓存静态文件问题。 一般浏览器缓存的文件有html、css、js等。 css、js文件被缓存的解决方案 一般html中引入的css和js的名字都加了哈希值,所以新版本css、js和就旧版本的名字是不同的,不会有缓存问题。 如果index.html文件被缓存就稍微麻烦些 首先可以在index.html文件头部添加mate标签禁止缓存 <meta http-equiv="Expires" content="0"> <...

阅读全文>>

标签: 面试 缓存

评论(0) 浏览(11724)

前端路由之angular路由配置的区别#和/

2018-12-9 Jon js库

先说下什么是前端路由 以前路由都是后台做的,通过用户请求的url导航到具体的html页面,这种无法做单页应用 而一般要前端单页应用项目就会需要用到前端路由 现在我们在前端可以利用 Angular、vue、react等通过配置文件,达到前端控制路由跳转的功能。 前端路由的实现方法 1.通过hash实现 当url的hash发生改变时,不触发网页重载,触发hashchange注册的回调,回调中去进行不同的操作,进行不同的内容展示。 使用hash来实现的话,URI规则中要带上#,路由中#后边的内容就是hash 如 http://localhost:4200/#/home/pa...

阅读全文>>

标签: 路由

评论(0) 浏览(3817)

js获取浏览器系统当前使用语言

2018-11-8 Jon js+jquery+ajax

运行下面代码获取本地系统语言,关键是js代码 <!DOCTYPE html><html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta http-equiv="X-UA-Compatible" content="ie=edge" /><title>获取浏览器系统当前使用语言</title></h...

阅读全文>>

评论(0) 浏览(2585)

get和post请求的区别及本质总结

2018-10-9 Jon 其他

先看答案 不同点: GET参数通过URL传递,POST放在Request body中。 GET在浏览器回退时是无害的,而POST会再次提交请求。 GET产生的URL地址可以被存为书签,而POST不可以。 GET请求会被浏览器主动cache,而POST不会,除非手动设置。 GET请求只能进行url编码,而POST支持多种编码方式。 GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。 GET请求在URL中传送的参数是有长度限制的,而POST没有。 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。 GET比POST更不安全,因为参数直接...

阅读全文>>

标签: get

评论(0) 浏览(3245)

HTML <base> 标签详解

2018-7-28 Jon html+css

HTML 标签详解 运行下面代码查看base标签功能 <!DOCTYPE html><html lang="en"><head><meta charset="UTF-8" /><base href="http://yuanqiao.pw/img/" data-ke-src="http://yuanqiao.pw/img/" target="_blank" /> <meta name="viewport" content="width=device-width, initial-scale=1.0...

阅读全文>>

标签: base

评论(0) 浏览(2654)

常用地图坐标及相互转换

2018-6-16 Jon 前端工具

一、常用的地图坐标有三种 1、火星坐标(GCJ02)         火星坐标系,是由中国国家测绘局制订的地理信息系统的坐标系统。并要求在中国使用的地图产品使用的都必须是加密后的坐标,而这套WGS84加密后的坐标就是gcj02。谷歌国内地图、腾讯(搜搜)地图,阿里云地图,高德地图 2、地球坐标(WGS84)        美国GPS使用的是WGS84的坐标系统,以经纬度的形式来表示地球平面上的某一个位置。GPS、谷歌地图卫星,...

阅读全文>>

标签: 坐标

评论(0) 浏览(3537)

Angular 模块懒加载和预加载策略

2018-6-12 Jon js库

angular2及以上提供了两个非常实用的特性:懒加载和预加载 一、理论 1. 什么是懒加载? 懒加载也叫延迟加载,在访问到这个模块的时候,Angular才会加载这个模块。 2. 为什么要使用懒加载? 我们知道一个项目做得比较大的时候,模块组件比较多的时候,代码的体积也就相应增加,执行时间相应延长,这样会使得页面首次打开加载时长增大,用户体验下降。使用懒加载可以很好地解决这个问题,让开始只加载需要用户需要的代码,后续用户交互时再加载对应的代码,可以大幅提升首屏用户体验,让用户感觉到首屏很快,但是随之带了的是用户第一次去查看懒加载模块时,这个时候懒加载模块菜开始加载,会有个加载等待的延...

阅读全文>>

标签: angular

评论(0) 浏览(3657)

select2 默认不选中以及动态改变数据

2018-6-6 Jon js库

select2 使用总结 记录 select2 一般比较难查到的功能   加载数据并默认不选中   加载数据后动态改变数据(包含清空数据) Document section { margin: 30px; } /* 重置了选择框样式 */ .form-cont...

阅读全文>>

标签: select2

评论(0) 浏览(4634)

angular 如何在打包发布时清除console信息

2018-5-28 Jon js库

问题 console一般是我们开发时 用于测试打印到控制台的数据 以便我们调试程序 当项目打包上线时 这些console已然无用 这个时候还在控制台打印出来 如果打印的是一些敏感信息 就没那么安全了 并且还会影响美观 我们如果只是简单的查找代码中的console并删除 会有几个问题 1、工作量比较大(如果你使用console多的话) 2、如果你使用了一些插件,那么插件中的console删起来比较繁琐 3、如果后期想要开发环境上再次打印,则又要重复写和删 分析 那么既然我们开发环境需要而生产环境不需要 那么我们可以通过判断当前环境是开发还是生产 从...

阅读全文>>

标签: angular

评论(0) 浏览(3228)

皖ICP备15010162号-1 ©2015-2022 知向前端
qq:1614245331 邮箱:13515678147@163.com Powered by emlog sitemap