![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
前端
文章平均质量分 60
不帅的喆
https://github.com/fancyzhe
展开
-
Node基础(1)--模块机制
JavaScript从最开始的表单校验到现在的大型应用,大概经历工具类库、组件库、前端框架、前端应用的变迁。在经过了很长时间的努力,JavaScript不断被类聚和抽象,通过script标签的方式去引用代码的方式显得杂乱无章。不得不使用命名空间的方式去约束代码,以达到安全易用的目的。JavaScript的痛点在没有模块系统标准库较少没有标准的接口缺乏包管理系统CommonJS规...原创 2018-11-25 18:59:39 · 572 阅读 · 0 评论 -
expo搭建react-native项目
react-native官网中推荐开发使用expo去开发和真机启动项目。在项目中可以使用expo的脚手架expo-cli去搭建,也可以使用create-react-native-app 脚手架去搭建。博客中使用的后者。前者可以参考官网 Get Started全局安装脚手架cnpm -g i create-react-native-app创建项目create-react-native-ap...原创 2018-12-03 11:15:41 · 8901 阅读 · 2 评论 -
Node基础(2)-- 异步I/O和异步编程
阻塞和非阻塞操作系统内核对于I/O操作只有两种方式,阻塞和非阻塞。阻塞是要等事件在系统内核层面完成所有的操作,才是调用结束可以进行下一个调用。造成了一定的CPU浪费,CPU不能得到充分利用。阻塞调用->等待数据->返回数据非阻塞调用不带数据返回,调用后立即返回。返回过后,CPU就可以执行其他的事件,如果需要获取数据的话,需要通过文件描述符再次获取。非阻塞调用-...原创 2018-12-17 09:43:03 · 238 阅读 · 0 评论 -
我知道的JavaScript(2)-- 解决跨域
CORS Cross-Origin Resource Sharing跨域资源共享前言同源策略是为了减少XSS和CSRF攻击,跨域是由浏览器的同源策略导致的。同源策略会导致缓存无法访问DOM和JS无法访问AJAX请求不能使用解决方案JsonP基本原理是动态加载一个script便签,从而实现跨域访问。仅限于get请求CORS跨域资源共享在服务器端要开放跨域,设置Acc...原创 2018-12-28 18:03:14 · 168 阅读 · 0 评论 -
我知道的JavaScript(1)-- 理解作用域
介绍作用域程序中的一段源代码在执行会经历三个步骤,统称“编译”。词法分析 -> 语法分析 -> 代码生成词法作用域词法作用域意味着作用域是由书写代码时函数声明的位置来决定。编译的词法分析阶段基本能知道全部标识符在哪里以及是如何声明的,从而能够预测在执行过程中如何对他们进行查找。var x = 4;function foo(a){ var b = 1; ...原创 2018-12-28 18:03:52 · 203 阅读 · 0 评论 -
说几道有意思的面试题
很长时间没有写博客,突然想起来现在的公司的面试题。选了比较有意思的几道题,写一篇博客谈一谈。祖传代码的重构题目描述:现在有一个函数Add(),里面代码很复杂实现了一系列的功能。不能不去重构他会波及太大,所以不能改函数里面的代码。但新需求是要知道在哪里调用了这个函数,这个函数被调用了多少次(count)和被实例化了多少次(newCount)。function Add(...){ .....原创 2019-03-02 16:02:56 · 278 阅读 · 0 评论 -
用Node从零开始实现小爬虫
前言node和Python一样适合做爬虫爬取数据进行解析输出相应格式的json数据。这个项目爬虫的基本原理在,获取到页面的HTML内容,使用cheerio去解析HTML,操作DOM节点获取数据。技术栈node+express+axois项目运行git clone https://github.com/fancyzhe/nodeGetData.gitnpm installnpm st...原创 2019-03-04 11:29:28 · 277 阅读 · 0 评论 -
通过实现getData接口了解egg.js
egg的路由跟umi的路由比较相似,是一种约定式路由的实现。UMI是在指定文件夹下建立相应文件,umi会自动生成路由配置。对下面这段代码进行增加修改:'use strict';//脚手架生成的router.js/** * @param {Egg.Application} app - egg application */module.exports = app => { co...原创 2019-03-27 15:30:40 · 883 阅读 · 0 评论