node升阶段面试50

简单

  1. nodejs的是什么(三点核心)?

    1. Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。
    2. Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型。
    3. Node 是一个让 JavaScript 运行在服务端的开发平台。
  2. 搭建一个简单服务器的步骤?

    1. 引入 http模块 var http=require('http')
    2. 创建服务 var server=http.createServer(function(req,res){})
    3. 监听端口 server.listen(3000)
  3. fs模块如何同步读取文件?以及如何处理同步阻塞问题?(读取文件路径’./a.txt’)

    try{
     data=fs.readFileSync('./a.txt','utf-8')
       }catch(e){
         throw e;
       }
    
  4. fs如何异步读取文件?(路径./a.txt)

    fs.readFile('./a.txt','utf-8',function(err,data){})

  5. url模块如何获取 str='http://www.baidu.com:3000/a/b?c=100中每一部分(协议,域名,端口,路径,参数)?

      var url=require('url');
      var str='http://www.baidu.com:3000/a/b?c=100'
      var obj=url.parse(str,true);
      obj.protocal    协议
      obj.hostname  域名
      obj.port       端口
      obj.pathname  路径
      obj.query     参数
    
  6. 同步和异步的区别?

  • 同步:执行同步操作时,会从上往下依次执行。代码一但报错,就会阻塞,解决同步阻塞 可以用try{ } catch(e){ }

  • 异步: 执行到异步操作时,会将异步读取任务放置任务队列,等所有同步执行完毕,任务队列中的回调函数会依次执行。

  • js中常见的异步: 定时器,ajax,事件绑定(addEventlistener)

  1. npm 是什么?下载包时可以用哪个工具替代?

npm 是包管理工具,下载包时可以用cnpm代理、也可以yarn代替(google的产品)。

例如下载[email protected]
npm ----> npm install [email protected]
cnpm----> cnpm install [email protected]
yarn ----> yarn add [email protected]

  1. express创建项目流程?
express -e projectName
cd projectName
npm install   /   cnpm install   /   yarn install 
npm start   /  yarn start
  1. express项目目录组成,以及每部分的含义?

bin 项目启动文件(端口号可以在本文件中修改)
node_modules 项目依赖目录
routes 路由
views 视图文件 (ejs文件)
public 静态资源文件 (img、js、css、font)
app.js 核心主文件 (定义服务器)
package.json 项目信息说明

  1. get与post区别?
  • get: 参数追加在url后面、明文可见、不安全、长度有限制(IE 2k) 、请求速度快、一般用于查询。

  • post:参数放在请求头的body,大小没有限制。安全性高。请求速度不get慢。一般用户:提交、添加。

原创文章 56 获赞 55 访问量 9642

猜你喜欢

转载自blog.csdn.net/weixin_43638968/article/details/105699072