自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 问答 (1)
  • 收藏
  • 关注

原创 Nodejs文件操作

1.fs.stat 检测是文件还是目录var fs=require('fs');fs.stat('html',function(err,stats){ if(err){ console.log(err); return false; } console.log('文件:'+stats.isFile()); console.log('目录:'+stats.isDirect...

2019-01-31 23:55:30 584

原创 Nodejs中的path模块

path 模块提供了一些工具函数,用于处理文件与目录的路径const path = require('path');1.path.dirname(filepath)获取路径const path=require("path");var filepath='/node/base/path/test.js';console.log( path.dirname(filepath))...

2019-01-31 23:30:02 892

转载 nodejs中url模块。

nodejs里面的一个简单的模块,url模块。url一共提供了三个方法,分别是url.parse();  url.format();  url.resolve()1 url.parse(urlString,boolean,boolean)parse这个方法可以将一个url的字符串解析并返回一个url的对象参数:urlString指传入一个url地址的字符串第二个参数(可省)传入一个布尔值...

2019-01-31 23:11:39 627 1

原创 nodejs中的事件events

因为在node当中的大部分功能模块都依赖了events,所以events模块是Nodejs当中非常重要的模块之一。events对外暴露的是一个class即EventEmitter。EventEmitter的作用有两个,分别是对事件的监听与发射。const EventEmitter = require('events');class MyEmitter extends EventEmitte...

2019-01-31 22:59:30 141

转载 nodejs之事件驱动、非阻塞

事件驱动的模型事件驱动的原理原理总结:Nodejs 会把所有请求和异步操作都放到一个事件队列中,用户的每一个请求就是一个事件。主线程先把普通代码执行完毕,然后会循环事件队列里的函数,如果遇到有IO的操作,nodejs会去线程池里拿出一个线程去执行IO的操作,执行完毕后再把拿到数据的回调函数,放到事件队列的尾部,继续事件循环。IO 操作io操作就是以流的形式,进行的操作,比如网络请...

2019-01-31 22:40:01 236

转载 Node.js中的Event Loop

Node.js是单线程的Event Loop,但是它的运行机制不同于浏览器环境。Node.js的运行机制如下。(1)V8引擎解析JavaScript脚本。(2)解析后的代码,调用Node API。(3)libuv库负责Node API的执行。它将不同的任务分配给不同的线程,形成一个Event Loop(事件循环),以异步的方式将任务的执行结果返回给V8引擎。(4)V8引擎再将结果返回给...

2019-01-31 22:26:11 122

原创 es6扩展运算符

数组的扩展运算符扩展运算符(spread)是三个点(…)。它是将一个数组转为用逗号分隔的参数序列。let arr = [];arr.push(...[1,2,3,4,5]);console.log(arr); //[1,2,3,4,5]console.log(1, ...[2, 3, 4], 5) //1 2 3 4 5作用1.合并数组const a1 = [1, 2, 3], ...

2019-01-30 23:33:56 109

原创 js formData对象

formData对象用于组装表单数据,以键值对的形式存在。FormData 首先是一个构造函数,用来生成实例var formdata = new FormData(form);FormData()构造函数的参数是一个表单元素,这个参数是可选的。如果省略参数,就表示一个空的表单,否则就会处理表单元素里面的键值对。<form id="myForm" name="myForm">...

2019-01-24 16:19:14 1466

原创 web worker简介

我们都知道JavaScript这个语言在执行的时候是采用单线程进行执行的,也就是说在同一时间只能做一件事,这也和这门语言有很大的关系,采用同步执行的方式进行运行,如果出现阻塞,那么后面的代码将不会执行,HTML5则提出了web Worker标准,表示JavaScript允许有多个线程,但是子线程完全受主线程的控制,切子线程不能操作DOM,只有主线程可以操作DOM,所以以主线程为主的单线程执行原理成...

2019-01-24 02:32:21 128

原创 js深拷贝与浅拷贝

在JavaScript中对象的浅拷贝和深拷贝有如下区别:浅拷贝:仅仅复制对象的引用,而不是对象本身。深拷贝:复制对象所引用的全部对象。浅拷贝的时候如果数据是基本数据类型,那么就如同直接赋值那种,会拷贝其本身,如果除了基本数据类型之外还有一层对象,那么对于浅拷贝而言就只能拷贝其引用,对象的改变会反应到拷贝对象上;但是深拷贝就会拷贝多层,即使是嵌套了对象,也会都拷贝出来。浅拷贝1.自定义实现...

2019-01-24 02:22:29 87

原创 js正则表达式

var t = 'sda43645dfgkl' var reg = /\d/ //字面量 var reg = new RegExp('\d') //构造函数 //reg.test(str) :判断字符串中是否具有指定模式的子串,返回结果是一个布尔类型的值 console.log(reg.test(t)) ...

2019-01-24 01:37:08 116

原创 es6中的asyc await

async 函数是 Generator 函数的语法糖。使用 关键字 async 来表示,在函数内部使用 await 来表示异步。想较于 Generator,Async 函数的改进在于下面四点:内置执行器。Generator 函数的执行必须依靠执行器,而 Aysnc 函数自带执行器,调用方式跟普通函数的调用一样更好的语义。async 和 await 相较于 * 和 yield 更加语义化...

2019-01-24 01:29:58 2528

原创 es6 中的Generator

Generator函数是ES6提供的一种异步编程解决方案。通过yield标识位和next()方法调用,实现函数的分段执行。1.Generator函数 function* helloGenerator() { yield "hello"; yield "generator"; return; } var h = helloGenerator...

2019-01-24 01:16:11 103

转载 Js 的事件循环(Event Loop)机制

1.为什么JavaScript是单线程  JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。那么,为什么JavaScript不能有多个线程呢?这样能提高效率啊。JavaScript的单线程,与它的用途有关。作为浏览器脚本语言,JavaScript的主要用途是与用户互动,以及操作DOM。这决定了它只能是单线程,否则会带来很复杂的同步问题。比如,假定JavaScrip...

2019-01-24 00:59:09 137

原创 js 事件绑定

addEventListener:绑定事件的监听函数removeEventListener:移除事件的监听函数1.EventTarget.addEventListener() EventTarget.addEventListener()用于在当前节点或对象上,定义一个特定事件的监听函数。一旦这个事件发生,就会执行监听函数。该方法没有返回值target.addEventListener(ty...

2019-01-24 00:08:18 108

原创 js 事件委托

传统的事件处理中,需要为每个元素添加事件处理器。js事件代理则是一种简单有效的技巧,通过它可以把事件处理器添加到一个父级元素上,从而避免把事件处理器添加到多个子级元素上。事件代理的原理用到的就是事件冒泡和目标元素,把事件处理器添加到父元素,等待子元素事件冒泡,并且父元素能够通过target(IE为srcElement)判断是哪个子元素,从而做相应处理, 下面举例说明:传统的事件会为每个dom添...

2019-01-23 23:45:01 86

原创 js DOM事件流

DOM(文档对象模型)结构是一个树型结构,当一个HTML元素产生一个事件时,该事件会在元素结点与根节点之间按特定的顺序传播,路径所经过的节点都会收到该事件,这个传播过程可称为DOM事件流。1.事件冒泡(推荐)IE的事件流称为事件冒泡。即:事件由最具体的元素接收(div),逐级向上传播到不具体的节点(document)。当我们点击代码片段一中id为box的div块时,单击事件会按照如下顺序传...

2019-01-23 23:35:42 574

原创 js DOM createNodeIterator()和createTreeWalker()

1.document.createNodeIterator()document.createNodeIterator方法返回一个子节点遍历器。var nodeIterator = document.createNodeIterator( document.body, NodeFilter.SHOW_ELEMENT);上面代码返回元素子节点的遍历器。document.create...

2019-01-23 22:56:54 875

原创 js DoM NodeList 接口,HTMLCollection 接口

节点都是单个对象,有时需要一种数据结构,能够容纳多个节点。DOM 提供两种节点集合,用于容纳多个节点:NodeList和HTMLCollection。1.NodeList实例是一个类似数组的对象,它的成员是节点对象。通过以下方法可以得到NodeList实例。  Node.childNodes  document.querySelectorAll()等节点搜索方法document.body....

2019-01-23 22:34:51 245

原创 js DOM Node 接口

所有 DOM 节点对象都继承了 Node 接口,拥有一些共同的属性和方法。这是 DOM 操作的基础属性1.Node.prototype.nodeType nodeType属性返回一个整数值,表示节点的类型document.nodeType // 9文档节点(document):9,对应常量 Node.DOCUMENT_NODE元素节点(element):1,对应常量 Node.ELE...

2019-01-23 22:09:21 320

原创 js中Object 对象的相关方法

1.Object.getPrototypeOf()Object.getPrototypeOf方法返回参数对象的原型。这是获取原型对象的标准方法var F = function () {};var f = new F();Object.getPrototypeOf(f) === F.prototype // true// 空对象的原型是 Object.prototypeObject.g...

2019-01-21 17:21:06 1341

原创 js 中的单例模式

1.单例就是保证一个类只有一个实例,实现方法一般是先判断实例存在与否,如果存在直接返回,如果不存在就创建了再返回,这就确保了一个类只有一个实例对象。在JavaScript里,单例作为一个命名空间提供者,从全局命名空间里提供一个唯一的访问点来访问该对象class SingleObject { login() { console.log('login...') }}...

2019-01-21 00:58:40 4324

原创 js中的工厂模式

ECMAScript中无法创建类,开发人员就发明了一种函数,用函数来封装以特定接口创建对象的细节///工厂模式function creatPerson(name,age,job) { var o = {}; o.name = name; o.age = age; o.job = job; o.sayName = function () { ...

2019-01-21 00:52:57 2454

原创 js 面试题二 设计类

根据以下题目描述设计一个类// 车class Car { constructor(num) { this.num = num }}// 入口摄像头class Camera { shot(car) { return { num: car.num, inTime: Date.now()...

2019-01-21 00:43:49 209

原创 js 面试题一 设计类

根据下题的描述,设计一个类class Car { constructor(number, name) { this.number = number this.name = name }}class Kuaiche extends Car { constructor(number, name) { super(numbe...

2019-01-21 00:41:15 177

原创 js Object.create() 方法

Object.create() 方法创建一个拥有指定原型和若干个指定属性的对象Object.create(proto, [ propertiesObject ])proto一个对象,应该是新创建的对象的原型propertiesObject可选。该参数对象是一组属性与值,该对象的属性名称将是新创建的对象的属性名称,值是属性描述符(这些属性描述符的结构与Object.defineProper...

2019-01-21 00:31:03 1655

原创 js中的原型

每个构造函数都有一个prototype属性,指向函数的原型对象每个实例对象都有一个-proto-属性,指向创建该对象的构造函数的原型

2019-01-21 00:05:31 104

原创 js中this的用法

this是js的一个关键字,随着函数使用场合不同,this的值会发生变化。但是总有一个原则,那就是this指的是调用函数的那个对象1.全局作用域或者普通函数中this指向全局对象window//直接打印console.log(this) //window//function声明函数function bar () {console.log(this)}bar() //window/...

2019-01-20 23:55:39 1063

原创 js继承的几种方式

1.原型链继承核心: 将父类的实例作为子类的原型将构造函数的原型设置为另一个构造函数的实例对象,这样就可以继承另一个原型对象的所有属性和方法,可以继续往上,最终形成原型链父类// 定义一个动物类function Animal (name) { // 属性 this.name = name || 'Animal'; // 实例方法 this.sleep = function...

2019-01-20 23:31:33 3363 1

原创 js创建对象的几种方式

1.通过字面量的方式创建对象 let per = { name:'zhangsan', age:25, job:'html', sayName:function(){ alert(this.name); } }缺点:代码复用性差,如果要创建多个类似的对象,会产生...

2019-01-20 22:34:49 334

原创 js实例对象与 new 命令

面向对象编程(Object Oriented Programming,缩写为 OOP)是目前主流的编程范式。它将真实世界各种复杂的关系,抽象为一个个对象,然后由对象之间的分工与合作,完成对真实世界的模拟。那么,“对象”(object)到底是什么?我们从两个层次来理解。(1)对象是单个实物的抽象。一本书、一辆汽车、一个人都可以是对象,一个数据库、一张网页、一个与远程服务器的连接也可以是对象。当...

2019-01-20 21:36:28 838

原创 react native 解决了一个bug后的思考

最近在做那个点击项目列表中的某一项目加载对应的面图层到地图上,但是一点击app就出现闪退,想了两天不 知道是什么原因,后来经过我不断尝试,才发现是因为传给地图的面数据构造错了,因为再添加一个数组包住原先那个数组,当时以为自己传的是对的,就没往这方面想,看来以后思考问题要经常换一个思路试试。以后遇见问题了1.首先要冷静思考,冷静,不能慌,遇见天大的事情也不能慌2.不断尝试寻找解决问题...

2019-01-18 18:31:09 127

原创 react native解析后端传过来的html

可以使用 react-native-htmlview组件来解析后端返回的htmlhttps://github.com/jsdf/react-native-htmlview <HTMLView value={this.state.approve_require} renderNode={this.renderNode} ...

2019-01-11 18:08:45 1798

原创 react native 提示框 react-native-easy-toast

在app上做调查问卷,让用户答问题的时候,如果该题为必答题,用户没有答题的话则弹出提示框,让用户答完题后再跳转到下一题使用 react-native-easy-toast 组件https://github.com/crazycodeboy/react-native-easy-toast安装yarn add react-native-easy-toast使用 this.state ...

2019-01-11 18:04:02 1803 2

原创 react native定位时请求开启位置权限

react native 在使用 Geolocation 定位获取经纬度的时候w,如果用户不开启位置信息,不打开gps,则会报错,所以一开始应该判断用户有没有开启位置信息,如果没有的话请求用户打开位置信息我在android react-native-android-location-services-dialog-box这个组件React Native Android Location Ser...

2019-01-11 17:36:26 7705

原创 react native 调查问卷

做react native 调查问卷的时候,需要设计跳题逻辑和关联逻辑,,,,冥思苦想了好几天,,,没想明白,,无法控制,,,于是在群里边问了下,,他们都说需要需要结合后端来控制,我真傻,竟然想在前端完全控制。。。。。。难道是因为我对后端不熟悉,我可是学过java的啊,,,,,,想不明白,,,,,,,...

2019-01-03 15:38:15 500

空空如也

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

TA关注的人

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