Node(3),腾讯前端面试难度

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
img

正文

app.get(‘/ab*cd’, function(req, res) {

console.log(“/ab*cd GET 请求”);

res.send(‘正则匹配’);

})

var server = app.listen(8081, function () {

var host = server.address().address

var port = server.address().port

console.log(“应用实例,访问地址为 http://%s:%s”, host, port)

})

启动:

在这里插入图片描述

分别访问不同的地址:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

静态文件

Express 提供了内置的中间件 express.static 来设置静态文件如:图片, CSS, JavaScript 等。

可以使用 express.static 中间件来设置静态文件路径。例如,一般将图片, CSS, JavaScript 文件放在 public 目录下。

app.use(‘/public’, express.static(‘public’));

新建目录:

E:\project\express_demo\public\images

在这个目录下存放一张图片haha.jpg。

处理静态文件实例,express_demo3.js:

var express = require(‘express’);

var app = express();

app.use(‘/public’, express.static(‘public’));

app.get(‘/’, function (req, res) {

res.send(‘Hello World’);

})

var server = app.listen(8081, function () {

var host = server.address().address

var port = server.address().port

console.log(“应用实例,访问地址为 http://%s:%s”, host, port)

})

启动:

在这里插入图片描述

访问地址:http://127.0.0.1:8081/public/images/haha.jpg

在这里插入图片描述

GET 方法

以下实例演示了在表单中通过 GET 方法提交两个参数,可以使用 server.js 文件内的 process_get 路由器来处理输入:

index.htm:

First Name:

Last Name:

server.js:

var express = require(‘express’);

var app = express();

app.use(‘/public’, express.static(‘public’));

app.get(‘/index.htm’, function (req, res) {

res.sendFile( __dirname + “/” + “index.htm” );

})

app.get(‘/process_get’, function (req, res) {

// 输出 JSON 格式

var response = {

“first_name”:req.query.first_name,

“last_name”:req.query.last_name

};

console.log(response);

res.end(JSON.stringify(response));

})

var server = app.listen(8081, function () {

var host = server.address().address

var port = server.address().port

console.log(“应用实例,访问地址为 http://%s:%s”, host, port)

})

执行以后,

访问地址:http://127.0.0.1:8081/index.htm

在这里插入图片描述

提交表单:

在这里插入图片描述

POST方法

同样地,应对post请求,process_post 路由器来处理。

index.htm:

First Name:

Last Name:

server.js:

var express = require(‘express’);

var app = express();

var bodyParser = require(‘body-parser’);

// 创建 application/x-www-form-urlencoded 编码解析

var urlencodedParser = bodyParser.urlencoded({ extended: false })

app.use(‘/public’, express.static(‘public’));

app.get(‘/index.htm’, function (req, res) {

res.sendFile( __dirname + “/” + “index.htm” );

})

app.post(‘/process_post’, urlencodedParser, function (req, res) {

// 输出 JSON 格式

var response = {

“first_name”:req.body.first_name,

“last_name”:req.body.last_name

};

console.log(response);

res.end(JSON.stringify(response));

})

var server = app.listen(8081, function () {

var host = server.address().address

var port = server.address().port

console.log(“应用实例,访问地址为 http://%s:%s”, host, port)

})

执行以后,

访问地址:http://127.0.0.1:8081/index.htm

在这里插入图片描述

在这里插入图片描述

文件上传

文件上传用的是post方法,上传表单 enctype 属性设置为 multipart/form-data。

index.htm:

文件上传表单

文件上传:

选择一个文件上传:


server.js:

var express = require(‘express’);

var app = express();

var fs = require(“fs”);

var bodyParser = require(‘body-parser’);

var multer = require(‘multer’);

app.use(‘/public’, express.static(‘public’));

app.use(bodyParser.urlencoded({ extended: false }));

app.use(multer({ dest: ‘/tmp/’}).array(‘image’));

app.get(‘/index.htm’, function (req, res) {

res.sendFile( __dirname + “/” + “index.htm” );

})

app.post(‘/file_upload’, function (req, res) {

console.log(req.files[0]); // 上传的文件信息

var des_file = __dirname + “/” + req.files[0].originalname;

fs.readFile( req.files[0].path, function (err, data) {

fs.writeFile(des_file, data, function (err) {

if( err ){

console.log( err );

}else{

response = {

message:‘File uploaded successfully’,

filename:req.files[0].originalname

};

}

console.log( response );

res.end( JSON.stringify( response ) );

});

});

})

ajax

1)ajax请求的原理/ 手写一个ajax请求?
2)readyState?
3)ajax异步与同步的区别?
4)ajax传递中文用什么方法?

ajax.PNG

前12.PNG

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

iginalname

};

}

console.log( response );

res.end( JSON.stringify( response ) );

});

});

})

ajax

1)ajax请求的原理/ 手写一个ajax请求?
2)readyState?
3)ajax异步与同步的区别?
4)ajax传递中文用什么方法?

[外链图片转存中…(img-ku0qdxOC-1713705976320)]

[外链图片转存中…(img-Z2BQ5dFm-1713705976321)]

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
[外链图片转存中…(img-Iclrym6j-1713705976321)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 26
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
面试涉及到Node.js的前端岗位时,通常会涉及以下几个方面的问题: 1. 什么是Node.js? Node.js是一个基于Chrome V8引擎的JavaScript运行环境,用于在服务器端运行JavaScript代码。它提供了一组丰富的内置模块,使得开发者可以轻松地构建高性能的网络应用。 2. Node.js的特点有哪些? - 异步非阻塞I/O模型:Node.js采用事件驱动、非阻塞的I/O模型,能够处理大量并发请求,提高系统的吞吐量。 - 单线程:Node.js使用单线程来处理请求,通过事件循环机制实现并发处理,避免了传统多线程编程中的线程切换开销。 - 轻量高效:Node.js具有较低的资源消耗和快速的启动时间,适合构建高性能的网络应用。 3. 如何在Node.js中处理异步操作? Node.js通过回调函数、Promise、async/await等方式来处理异步操作。常见的异步操作包括文件读写、网络请求、数据库查询等。通过合理地使用这些异步处理方式,可以避免阻塞主线程,提高系统的并发能力和响应速度。 4. 如何管理Node.js的依赖包? Node.js使用npm(Node Package Manager)作为包管理工具。通过在项目根目录下的package.json文件中定义依赖关系,可以方便地安装、更新和删除依赖包。同时,npm还提供了一些常用的命令,如npm install、npm update等,用于管理依赖包。 5. 如何处理Node.js中的错误? 在Node.js中,可以使用try-catch语句来捕获同步代码中的错误。对于异步代码,可以使用回调函数的第一个参数来传递错误信息。此外,还可以使用try-catch-finally语句块来处理异步操作中的错误。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值