<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[AmberQu的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/AmberQu</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; AmberQu]]></copyright><item><title><![CDATA[JavaScript 格式化数字、金额、千分位、保留几位小数、舍入舍去…]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79907517</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79907517</guid><author>AmberQu</author><pubDate>Thu, 12 Apr 2018 09:15:00 +0800</pubDate><description><![CDATA[前端开发中经常会碰到用 JavaScript 格式化数字，最最常见的是格式化金额，一般格式化金额需要千分位分隔，保留2位小数等等。简单的功能函数类似的代码网上有很多：JavaScript 代码:/** * 将数值四舍五入(保留2位小数)后格式化成金额形式 * * @param num 数值(Number或者String) * @return 金额格式的字符串,如'1,234,567.45' * @...]]></description><category></category></item><item><title><![CDATA[git clone，push，pull，fetch命令详解]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79784536</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79784536</guid><author>AmberQu</author><pubDate>Mon, 02 Apr 2018 09:24:02 +0800</pubDate><description><![CDATA[Git是目前最流行的版本管理系统，学会Git几乎成了开发者的必备技能。Git有很多优势，其中之一就是远程操作非常简便。本文详细介绍5个Git命令，它们的概念和用法，理解了这些内容，你就会完全掌握Git远程操作。git clonegit remotegit fetchgit pullgit push本文针对初级用户，从最简单的讲起，但是需要读者对Git的基本用法有所了解。同时，本文覆盖了上面5个命令...]]></description><category></category></item><item><title><![CDATA[git冲突]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79784279</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79784279</guid><author>AmberQu</author><pubDate>Mon, 02 Apr 2018 09:06:19 +0800</pubDate><description><![CDATA[commit your changes or stash them before you can merge.  这个问题的原因是本地与仓库内版本冲突，有三种解决方案1）commit本地的修改2）通过git stash$ git stash
$ git pull/fecth ……
$ git stash pop 通过git stash将工作区恢复到上次提交的内容，同时备份本地所做的修改，之后就可以...]]></description><category></category></item><item><title><![CDATA[oauth]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79750465</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79750465</guid><author>AmberQu</author><pubDate>Thu, 29 Mar 2018 22:35:59 +0800</pubDate><description><![CDATA[用户在使用客户端的软件时，如果需要涉及到第三方的资料则必须进行授权。如果直接将用户名和密码提供给客户端，然会牵扯到用户隐私，为了规避这个问题，于是利用oauth来作为一个授权中间层。可以保证第三方仅提供用户想要授权的范围给客户端。ouath共有4种模式，其中最严谨的模式为授权码模式...]]></description><category></category></item><item><title><![CDATA[jsonp原理]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79750455</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79750455</guid><author>AmberQu</author><pubDate>Thu, 29 Mar 2018 22:35:03 +0800</pubDate><description><![CDATA[jsonp浏览器为了保护用户访问安全，使用了同源策略，ajax不允许请求非同源的url，但script不受限制。利用script标签来执行远程js，实现跨域请求动态创建script标签指向跨域的php，将js函数名作为回调函数的参数传入，服务器端返回被包装后的json数据json padding→jsonp...]]></description><category></category></item><item><title><![CDATA[git add的功能]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79750427</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79750427</guid><author>AmberQu</author><pubDate>Thu, 29 Mar 2018 22:32:51 +0800</pubDate><description><![CDATA[git add作用是将代码提交到暂存区git add .:将已经跟踪的进行了修改的文件以及新增加的文件提交到暂存区git add -u .:将跟踪的修改或删除的文件提交git add -A .:包括了前两项git add -i .:作用范围同-ugit add -h:帮助说明...]]></description><category></category></item><item><title><![CDATA[AMD与CMD区别]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79750378</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79750378</guid><author>AmberQu</author><pubDate>Thu, 29 Mar 2018 22:28:21 +0800</pubDate><description><![CDATA[AMD是异步模块定义，对应RequireJs，CMD是通用模块定义，对应SeaJs。两者都是主要针对浏览器端的js模块化开发，并且都是预先并行加载所有依赖的模块。AMD推崇依赖前置，会提前解析所有模块，速度较快但加载结果不一定按预期顺序，API一个当多个用CMD推崇就近依赖，只在需要时解析对应模块，速度较慢但按照代码顺序执行，API职责单一...]]></description><category></category></item><item><title><![CDATA[ES6这些就够了]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79730986</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79730986</guid><author>AmberQu</author><pubDate>Wed, 28 Mar 2018 17:27:21 +0800</pubDate><description><![CDATA[刚开始用vue或者react，很多时候我们都会把ES6这个大兄弟加入我们的技术栈中。但是ES6那么多那么多特性，我们需要全部都掌握吗？秉着二八原则，掌握好常用的，有用的这个可以让我们快速起飞。接下来我们就聊聊ES6那些可爱的新特性吧。1.变量声明const和let我们都是知道在ES6以前，var关键字声明变量。无论声明在何处，都会被视为声明在函数的最顶部(不在函数内即在全局作用域的最顶部)。这就是...]]></description><category></category></item><item><title><![CDATA[减少前端代码耦合]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79713083</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79713083</guid><author>AmberQu</author><pubDate>Wed, 28 Mar 2018 14:55:53 +0800</pubDate><description><![CDATA[什么是代码耦合？代码耦合的表现是改了一点毛发而牵动了全身，或者是想要改点东西，需要在一堆代码里面找半天。由于前端需要组织js/css/html，耦合的问题可能会更加明显，下面按照耦合的情况分别说明：这应该是比较常见的耦合。全局耦合就是几个类、模块共用了全局变量或者全局数据结构，特别是一个变量跨了几个文件。例如下面，在html里面定义了一个变量：&amp;lt;script&amp;gt;
    var PAGE...]]></description><category></category></item><item><title><![CDATA[时间戳转换为格式化日期]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79715715</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79715715</guid><author>AmberQu</author><pubDate>Wed, 28 Mar 2018 14:55:48 +0800</pubDate><description><![CDATA[利用ES6将时间戳转换为 yyyy-MM-dd hh:mm:ssformatDate(time) {
	let date = new Date(time);
	return formatDate(date, 'yyyy-MM-dd hh:mm');
}
			
function formatDate(date,fmt){
	if(/(y+)/.test(fmt)){
		fmt = fmt.rep...]]></description><category></category></item><item><title><![CDATA[jsonp的原理和实现]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79713044</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79713044</guid><author>AmberQu</author><pubDate>Tue, 27 Mar 2018 14:46:15 +0800</pubDate><description><![CDATA[什么是JSONP？javascript高级程序设计中是这样介绍jsonp的:jsonp是JSON with padding(填充式JSON或参数式JSON )的简写，是应用JSON的一种新方法，在后来的Web服务中非常流。jsonp看起来与json差不多，只不过是被包含在函数调用中的json。jsonp由回调函数和数据两部分组成。简单点说，jsonp是一种跨域通信的手段，它的原理其实很简单：首先是...]]></description><category></category></item><item><title><![CDATA[es6快速入门]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79713009</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79713009</guid><author>AmberQu</author><pubDate>Tue, 27 Mar 2018 14:43:46 +0800</pubDate><description><![CDATA[转载：https://www.cnblogs.com/zhouyangla/p/7225335.html1.变量声明let和const我们都是知道在ES6以前，var关键字声明变量。无论声明在何处，都会被视为声明在函数的最顶部(不在函数内即在全局作用域的最顶部)。这就是函数变量提升例如:function aa() {
    if(bool) {
        var test = 'hello...]]></description><category></category></item><item><title><![CDATA[为元素添加hover的事件代理]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79707503</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79707503</guid><author>AmberQu</author><pubDate>Tue, 27 Mar 2018 09:09:34 +0800</pubDate><description><![CDATA[$(selector).on(event,childSelector,data,function,map) 在传递到里面的参数中，只可以传一个function切换class名称模拟// js
$('ul.course_lists').on('mouseenter mouseleave','li',function(){ 
      $(this).toogleClass('border_colo...]]></description><category></category></item><item><title><![CDATA[AngularJS 路由 resolve用法]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79707485</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79707485</guid><author>AmberQu</author><pubDate>Tue, 27 Mar 2018 09:08:14 +0800</pubDate><description><![CDATA[ng-route模块中的when()和ui-route的state()都提供了 resolve 属性。为什么需要使用resolve？当路由切换的时候，被路由的页面中的元素（标签）就会立马显示出来，同时，数据会被准备好并呈现出来。但是注意，数据和元素并不是同步的，在没有任何设置的情况下，AngularJS 默认先呈现出元素，而后再呈现出数据。这样就会导致页面会被渲染两遍，导致“页面UI抖动”的问题，...]]></description><category></category></item><item><title><![CDATA[promise]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79707472</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79707472</guid><author>AmberQu</author><pubDate>Tue, 27 Mar 2018 09:07:36 +0800</pubDate><description><![CDATA[promise语法promise 是某个函数返回的对象，代表异步操作完成或失败的对象。之前常用的是由其他函数创建并返回的 promise。旧式函数：function successCallback(result) {
  console.log(&quot;It succeeded with &quot; + result);
}

function failureCallback(error) {
  consol...]]></description><category></category></item><item><title><![CDATA[根据设备分辨率更改根字体大小]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79707462</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79707462</guid><author>AmberQu</author><pubDate>Tue, 27 Mar 2018 09:07:00 +0800</pubDate><description><![CDATA[rem布局，根据设备分辨率更改根字体大小  (function (win, doc) {
  
    change();
    
    function change() {
      doc.documentElement.style.fontSize = doc.documentElement.clientWidth * 20 / 320 + 'px';
    }

    win....]]></description><category></category></item><item><title><![CDATA[Vuejs2.0之异步跨域请求——axios]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79707457</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79707457</guid><author>AmberQu</author><pubDate>Tue, 27 Mar 2018 09:06:33 +0800</pubDate><description><![CDATA[vue2.0中，HTTP请求从推荐 Vue-Resoure 变为了 axios。axiosaxios 简介axios 是一个基于Promise 用于浏览器和 nodejs 的 HTTP 客户端，它本身具有以下特征：从浏览器中创建 XMLHttpRequest从 node.js 发出 http 请求支持 Promise API拦截请求和响应转换请求和响应数据取消请求自动转换JSON数据客户端支持防止...]]></description><category></category></item><item><title><![CDATA[vue开发基础搭建]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79707447</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79707447</guid><author>AmberQu</author><pubDate>Tue, 27 Mar 2018 09:05:51 +0800</pubDate><description><![CDATA[Vue推荐开发环境Node.js 6.2.0、npm 3.8.9、webpack 1.13、vue-cli 2.5.1、webstrom2016Vue-Cli开发模板可以快速生成vuejs的运行配置环境，可以使新手快速免除配置搭建出运行界面现在开始安装环境安装nodejs获取nodejs模块安装目录访问权限(？)sudo chmod -R 777 /usr/local/lib/node_modul...]]></description><category></category></item><item><title><![CDATA[安装Nodejs、npm、Less（支持生成压缩后的css）]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79707442</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79707442</guid><author>AmberQu</author><pubDate>Tue, 27 Mar 2018 09:05:22 +0800</pubDate><description><![CDATA[(可选)添加npm环境变量在桌面上点键计算机-【属性】-【高级系统设置】-【高级】-【环境变量】-【系统变量】-【新建】：NODE_PATH=D:\Program Files\nodejs\node_modules\npm\
安装Less//若添加了环境变量
d:
cd D:\Program Files\nodejs\node_modules\npm
//下面命令是安装less，注意一定要有-g，...]]></description><category></category></item><item><title><![CDATA[微信跨域&分享]]></title><link>https://blog.youkuaiyun.com/AmberQu/article/details/79707434</link><guid>https://blog.youkuaiyun.com/AmberQu/article/details/79707434</guid><author>AmberQu</author><pubDate>Tue, 27 Mar 2018 09:04:48 +0800</pubDate><description><![CDATA[微信h5页面跨域请求$(function() {
            //页面加载完后ajax跨域获取签名信息
            var sourceUrl = &quot;/wechat/signature/sub&quot;; //签名地址
            var thisUrl = location.href.split('#')[0]; //本页url
            var sou...]]></description><category></category></item></channel></rss>