自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

原创 Android

前端进程可见进程线程不安全对象:带有状态的对象线程不安全变量尽量使用局部变量(方法里面)

2019-11-06 15:34:29 118

原创 java

数据类型的转换:布尔数据类型不参与任何类型的数据转换。在参与运算的数据中,容量小的数据类型会自动向容量大的数据类型转换转换规则:byte short char 会转换成int int 转换成long long 转换成float float 转换成double算数运算符: + - * / %(取得余数)字符串连接符:+ 左右两边任何一边出现了字符串 那么+ 就...

2019-11-06 15:33:36 124

原创 每天的java作业

面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面:-抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。抽象只关注对象有哪些属性和行为,并不关注这些行为的细节是什么。-继承:继承是从已有类得到继承信息创建新类的过程。提供继承信息的类被称为父类(超类、基类);得到继承信息的类被称为子类(派生类)。继承让变化中的软件系统有了一定的延续性,...

2019-11-06 15:31:33 127

原创 javaweb

java web 是用java技术来解决web互联网领域的技术总和。web包括:web服务器和web客户端两部分。java在客户端的应用有java applet,不过使用的很少,java在服务器上的应用非常的丰富,比如Servlet,JSP,和第三方框架等,java技术对web领域的发展注入了强大的动力。 web服务器,一般指网站服务器,是指驻留在因特网上某种类型...

2019-11-06 15:30:18 135

原创 git 的一个报错

本地切换已经存在分支在团队中跟小伙伴一起开发的时候,小伙伴已经建立了新的分支,我想要本地切换到他创建的分支上去,于是git chekcout new branch。神奇的事情就在这个时候发生了,git 报错: error: pathspec ‘branch170628_foo’ did not match any file(s) known to git.英语过了6级的小伙伴一看就能明白,这句话

2017-08-28 20:21:53 447

转载 get和post

GET和POST有什么区别?网上的多数答案都是错的! 2017-06-14 木叶 倚楼听风雨的如月 如果有人问你,GET和POST,有什么区别?你会如何回答?我的经历 前几天有人问我这个问题。我说GET是用于获取数据的,POST,一般用于将数据发给服务器之用。这个答案好像并不是他想要的。于是他继续追问有没有别的区别?我说这就是个名字而已,如果服务器支持,他完全可以把GET改个名字叫G

2017-07-07 20:13:43 342

原创 sourcemap

一、从源码转换讲起JavaScript脚本正变得越来越复杂。大部分源码(尤其是各种函数库和框架)都要经过转换,才能投入生产环境。常见的源码转换,主要是以下三种情况:  (1)压缩,减小体积。比如jQuery 1.9的源码,压缩前是252KB,压缩后是32KB。   (2)多个文件合并,减少HTTP请求数。  (3)其他语言编译成JavaScript。最常见的例子就是CoffeeScript。这三种

2017-07-07 20:12:51 441 1

原创 IIFE

常见格式:(function() { /* code */ })(); 解释:包围函数(function(){})的第一对括号向脚本返回未命名的函数,随后一对空括号立即执行返回的未命名函数,括号内为匿名函数的参数。 作用:可以用它创建命名空间,只要把自己所有的代码都写在这个特殊的函数包装内,那么外部就不能访问,除非你允许(变量前加上window,这样该函数或变量就成为全局)。各JavaScrip

2017-07-07 20:12:21 368 1

原创 组件间通信

在vue和react中父子组件之间的通信原来是相似的,首先,在vue和react中父组件向子组件通信都是通过父组件给子组件传递props的方式来进行的,并且两个框架都规定子组件不得改变父组件传过来的参数,如果一定要改变那么最好在子组件中声明一个依赖父组件props的局部变量,然后子组件向父组件传值的时候,在vue中是使用的所谓的‘自定义事件’你可以在子组件中点击一个按钮的时候调用一个子组件中的函数,

2017-07-07 20:11:49 431 1

原创 vue中遇到的坑

1 一个是eventHub的坑–重复监听的问题:解决方案监听之前先off掉2 路由的坑–不加replace会两个页面来回跳,无法正常的返回父级页面。3 vuejs对data中数组的原生方法进行了封装,所以在改变数组时能够触发视图更新,但是以下两种情况是无法触发视图的更新的:1 通过索引直接修改数组的元素,例如vm.items[0] = {title: 'title'} 2 无法直接修改数组的长度

2017-07-07 20:09:15 4615

原创 npm install 命令知多少

网看到一个答案,回答的很好:一个node package有两种依赖,一种是dependecies一种是devDependecies其中,前者是正常运行该包时候所需要的依赖项,而后者是开发的时候需要的依赖项,比如一些进行单元测试之类的包。如果你将包下载下来在包的根目录里面运行npm install 默认会安装两种依赖——(这也就是我们开发人员工作最常用的方式,一个人搭好项目框架将两种依赖写进pack

2017-06-29 10:19:51 388

原创 基于nodeJS的前端开发到底啥意思?

今天在回来的班车上突然顿悟了‘基于node的前端开发’这句话的奥义!这个长久以来困扰着自己的问题,一直在寻找的答案,也许我现在的理解也不见得就十分准确,但是可以肯定的是,对于现阶段的我自己来说是有帮助的,现在记录如下:上个周末去了上海书城去看了下关于node的书籍,在深入浅出node中看到: node之父最初只是想搞一个拥有对搞并发还有高性能并且不阻塞的服务器,然后综合很多因素,最后决定用js来实现

2017-06-29 09:40:17 12895

原创 记录一次webpack2的项目架构

1、npm init -y 生成package.json项目描述文件。2、npm install webpack –save-dev 下载webpack并将其安装到开发环境中。3、npm install babel-loader babel-core –save-dev 下载安装babel转码工具并将其添加到开发环境中。4、npm install css-loader style-loader –s

2017-06-29 09:39:27 464

原创 es6 和 common.js

ES6标准发布后,module成为标准,标准的使用是以export指令导出接口,以import引入模块,但是在我们一贯的node模块中,我们采用的是CommonJS规范,使用require引入模块,使用module.exports导出接口。ES6中的moduleES6发布的module并没有直接采用CommonJS,甚至连require都没有采用,也就是说require仍然只是node的一个私有的全

2017-06-27 11:30:20 499

原创 vue-cli 脚手架

build/ 此目录包含开发服务器和生产webpack构建的实际配置,通常不需要改变里面的文件,如果需要自己定义webpack的loader加载器,那么就去自己配置build/webpack.base.conf.js这个文件。config/index.js 是主要的配置文件,暴露了构建设置的一些常见的配置选项。src/ 这里是你的大部分应用程序代码所在的位置,如何构建此目录中的内容,主要

2017-06-27 11:29:44 217

原创 代理

express服务器提供静态文件服务,不过它还使用了http-proxy-middleware,一个http请求代理的中间件。前端开发过程中需要使用到后台的API的话,可以通过配置proxyTable来将相应的后台请求代理到专用的API服务器。

2017-06-27 11:29:13 212

原创 压缩包

apk是androidpackage的缩写,也即使Android安装包,他是类似Symbian Sis或者Sisx的文件格式,通过将apk文件直接传递到android模拟器,或者android手机中即可进行安装。apk文件和sis一样,把android sdk编译的工程打包成一个安装程序文件,格式为apk。APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,

2017-06-27 11:28:34 2189

原创 vue2.0 语法

1、v-else0.5”> Now you see mediv v-else Now you don’t dive-else 元素必须紧紧的跟在v-if或者v-else-if元素的后面,否则它将不会被识别。另一个新加的指令v-else-ifdiv v-if=”type ===a” a div div v-else-if=”type===b”

2017-06-27 11:27:46 725

原创 webpack

更快捷的执行打包任务执行类似于node_modules/.bin/webpack这样的命令其实是比较烦人的,而且容易出错,不过值得庆幸的是npm可以引导任务的执行,对其进行配置后可以使用简单的npm start命令来代替这些繁琐的命令。在package.json中对npm的脚本部分进行相关的设置即可。注意:   package.json中的脚

2017-06-27 11:25:59 180

原创 vue webpack.base.config.js

其中的webpack.base.conf.js是一个基础的的环境配置,里面写的个各个环境(包括开发环境,生产环境,测试环境)都需要的配置可以认为是公共部分。比如说入口文件和输出文件这类,然后开发环境的webpack的配置webpack.dev.conf.js中开头位置有这么一句:module.exports = merge(baseWebpackConfig, {

2017-06-27 11:24:23 4337

原创 es6

import命令具有提升的效果,会提升到整个模块的头部,首先执行,require则没有这个特性。import 是静态执行的,所以不能使用表达式和变量,这些只有在运行时才能得到结果。export default 命令使用import命令的时候,用户需要知道所要加载的变量名或者函数名,否则无法加载,但是用户肯定希望快速上手,为了给用户提供方便,就要用到export default命令,为模块指定默认的输

2017-06-27 11:23:22 326

原创 id定位

id属性还可以用来导航到文档中的特定位置,比如说有个名为example.html的文档中包含一个id属性值为myelement的元素,那么使用example.html#myelement这个url即可直接导航到这个元素。 url尾部#加上元素id值的部分称为url片段表示符

2017-06-27 11:22:57 529

原创 import和require

import命令会被 JavaScript 引擎静态分析,先于模块内的其他模块执行(叫做”连接“更合适)。所以,下面的代码会报错。// 报错 if (x === 2) { import MyModual from ‘./myModual’;}上面代码中,引擎处理import语句是在编译时,这时不会去分析或执行if语句,所以import语句放在if代码块之中毫无意义,因此会报句法错误,而不是执

2017-06-27 11:21:44 825

原创 异步加载

下面就是两种异步加载的语法。上面代码中,标签打开defer或async属性,脚本就会异步加载。渲染引擎遇到这一行命令,就会开始下载外部脚本,但不会等它下载和执行,而是直接执行后面的命令。defer与async的区别是:前者要等到整个页面正常渲染结束,才会执行;后者一旦下载完,渲染引擎就会中断渲染,执行这个脚本以后,再继续渲染。一句话,defer是“渲染完再执行”,async是“下载完就执行”。另外,

2017-06-27 11:20:41 240

原创 node

node 提供一些全局的函数,setTimeout(): 用于在指定毫秒之后,运行回调函数。实际的调用间隔,还取决于系统因素。间隔的毫秒数在1毫秒到2,147,483,647毫秒(约24.8天)之间。如果超过这个范围,会被自动改为1毫秒。该方法返回一个整数,代表这个新建定时器的编号。Node提供两个全局变量,都以两个下划线开头。* __filename:指向当前运行的脚本文件名。* __

2017-06-27 11:19:48 183

原创 vuex

vuex的状态不能直接别改变,改变他的唯一途径是,显示的提交— commit mutation ,这样使得我们可以的方便跟踪每一个状态的变化。

2017-06-27 11:19:21 372

原创 node

反对前端团队将前端开发划分为“js开发”和“页面重构”两种岗位这种‘粗粒度’的开发理念,对GUI软件开发的分工规划应该以功能为单位,而不是开发语言,对开发者的技术要求也应该是掌握完整的前端技术。前端是一种‘远程部署’,运行时增量下载的GUI软件。前端没有安装过程,其所需的资源构建工具在命令行中运行npm install 命令,会自动安装dependencies和devDependencies字段中的

2017-06-27 11:18:50 238

原创 mixin

定义Actions var Reflux = require(‘reflux’); var BookmarkActions = Reflux.createActions([‘fetch’]); module.exports = BookmarkActions;定义Storevar $ = require(‘jquery’); var Reflux = require(‘reflux’); v

2017-06-27 11:18:07 351

原创 webpack

实际上,服务器和客户端没有任何区别,虽然这里没有按钮点击操作,也没有向文本文字键入的操作,但是在一个更高的层面上,事件正在发生。一个连接被建立——事件!数据通过连接接受——-事件!数据通过连接停止——事件!为什么我们可以直接写require(‘’) ,我们不能这么写的,我们之所以这么写,是因为webpack支持,webpack支持的模块化的方式是amd commonjs 和es6的模块化

2017-06-27 11:17:32 609

原创

知道为什么在虚拟机内部安装npm依赖这么快的原因了,就是企业内部为了安全会搭建自己的npm仓库,原理就跟淘宝镜像做的事情是一样的,这已经是公开的秘密了,并且企业内部搭建的仓库可以不必跟远程的仓库实时的保持同步。Express的安装:npm install express -g完了之后会发现运行express –version报错说express不是内部可以执行的命令,原因是express升级了,将命

2017-06-27 11:16:55 240

原创 flux

看完flux 其实,于reflux的不同也就是在于他多了一个dispatcher嘛,reflux更加精简,去掉了flux中的dispatcher的角色,而是将它的功能分配给了action和store里面去了

2017-06-27 11:15:59 231

转载 babel-ployfill

babel默认只是转换新的JavaScript句法,而不转换新的API 比如Iterator Generator Set Maps Proxy Relfact Symbol Promise 等全局对象,以及一些定义在全局对象上的方法,都不会转码。举例来说,es6在array对象上新增了Array.form方法。babel就不会转码这个方法。如果想让这个方法运行,必须使用babel

2017-06-27 11:15:36 1490

翻译 Cordavo

Cordova的主要组成部分有三块儿Web APP : 这是存放非应用程序的代码的地方,体现的是你的具体业务逻辑模块。应用的实现是通过web页面,默认的本地的文件名称是index.html这个本地文件应用css javascript 图片,媒体和其他运行需要的资源。应用执行在原生应用包装的WebView中,这个原生应用是你分发到appstores中的。WebView: Cordova

2017-06-27 11:14:43 365

原创 $.ajax()问题

遇到个奇葩又经典的问题:$.ajax()方法明明请求成功了,数据都在preview中显示出来了,可就是不执行success方法,而是执行了error方法,你说气人不气人,网络上找到了好多同胞,都是是这个问题,现在也简单的记录一下问题的原因嘛不外乎这么几种:1是跨域了,网上真的有人说是因为跨域了,把数据改成jsonp请求方式就解决了,我真是佩服了,如果是跨域了,请求还能发出去吗?preview中还能看

2017-06-26 22:15:16 196

转载 接着昨晚的写。。。

上回说到我们可以通过重写请求头的技术,来绕过浏览器的限制,今晚来看令一个在请求头中设置的头信息—–内容缓存Cache-Control一些浏览器会缓存通过Ajax请求所获得的内容,在浏览器回话期间不会再次的请求它。我们可以通过设置禁止缓存的头信息可以达到,当请求的内容发生了改变的时候,就会在下一次请求文档时体现出来需要做的就是在open方法和send方法之间加一句httpRequest.setRequ

2017-06-26 21:56:50 168

原创 HTML5中的新特性之Ajax篇

本篇内容是本人在学习HTML权威指南中过程中以笔记形式记录的关于Ajax的要点。等级Ajax核心规范的名称继承语XHR对象,这个规范有两个等级:level1和lever2,其中所有的主流浏览器都实现了level1代表的基础级别的功能,level2扩展了最初的规范,本文重点要讲解的CORS就是其中一个。基本的步骤创建一个新的XMLHttpRequest对象给readystatechange事件设置

2017-06-26 00:17:46 2406 1

原创 ES6中的Promise

哎呀,这个东西啊早就了解过了,但是奈何,受回调函数毒害日子太久了,以至于每次到了本可以使用promise来更加优雅的实现逻辑的时候,总是习惯性的使用了回调。这次又回头看了一遍阮老师的es6中关于promise的讲解,决定趁着热乎,记录下来,一来加深自己的理解,二来也提醒自己这是promise的时代了! 以下内容大多数来自阮老师的Es6入门 地址:http://es6.ruanyifeng.com

2017-06-21 22:52:35 229

原创 lodash和underscore

关系额 并没有查到二者有什么亲戚关系,都是js的工具库封装了很多很实用的方法。使用如果是npm安装就不说了,主要说一下如果是静态文件式的使用,就如同下载引入jQuery一样,需要将underscore或者lodash下载下来,那么问题来了,如何下载?是的,跑去两位的官网下载,第一次居然没下载到,下载链接点进去直接看到了赤裸裸的实现源码,我去,后来去underscore官网看一下,才知道要右键点击然

2017-06-21 17:14:41 1198 1

原创 flux | fecebookflux | reflux | redux 都是些啥

区别架构和实现flux是一个架构是抽象层面的东西,可以把他理解为commonJS规范一样的东西,是需要有人来具体实现它的。而facebookflux就是对flux规范的一个实现库,由于它比较早,可能是最早实现的吧人们也称之为origin flux ,在之后reflux是另一个对flux架构的实现库,功能跟Facebook flux一样但是使用更加方便,逻辑更加清晰,最后redux是现在比较热门的fl

2017-06-20 16:04:04 361

原创 浏览器原理

js线程浏览器的内核是多线程的,它们在内核制控下相互配合以保持同步,一个浏览器至少实现三个常驻线程:javascript引擎线程,GUI渲染线程,浏览器事件触发线程。 javascript执行顺序:http://bbs.html5cn.org/thread-80116-1-1.html JS一定要放在Body的最底部么:http://www.html5cn.org/article-9333-1.

2017-06-20 15:27:40 190

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除