面试题day05

目录

1、querystring模块中字符串转对象,或对象转字符串的方法

2、请用代码的方式获取post请求的参数

3、简单说一下你所了解的设计模式有哪些?分别是什么含义

4、link和@import的区别


1、querystring模块中字符串转对象,或对象转字符串的方法


    在Node.js环境中,可以使用querystring模块来进行URL查询字符串的解析和序列化。
    该模块parse()和stringify()方法来进行字符串和对象之间的转换
        
        要将查询字符串解析为对象,可以使用parse()方法。
        要将对象序列化为查询字符串,可以使用stringify()方法。

2、请用代码的方式获取post请求的参数


            在Node.js中,可以使用http或https模块创建HTTP或HTTPS服务器,
            然后使用request事件来处理客户端发来的请求。在处理POST请求时
            ,请求数据通常会以数据流的形式发送到服务器。
            要获取POST请求的参数,我们需要监听data事件来收集数据流,
            然后监听end事件来处理完整的请求数据。

const http = require('http');

const server = http.createServer((req, res) => {
  if (req.method === 'POST') {
    let body = '';

    req.on('data', (chunk) => {
      // 监听data事件,收集请求数据
      body += chunk.toString();
    });

    req.on('end', () => {
      // 监听end事件,处理完整的请求数据
      const params = new URLSearchParams(body);
      console.log(params.get('foo')); // 输出POST请求中名为foo的参数的值

      // 在这里进行请求数据的处理
      // ...

      res.end('OK'); // 发送响应数据
    });
  } else {
    res.statusCode = 404;
    res.end();
  }
});

server.listen(8000, () => {
  console.log('Server listening on port 8000');
});


3、简单说一下你所了解的设计模式有哪些?分别是什么含义


    ①、观察者模式 在对象之间建立一种发布/订阅的关系,使得当一个对象发生改变时,所有订阅它的对象都会得到通知并做出相应的响应。
    ②、单例模式 确保只有一个对象被实例化,并提供全局访问点来访问该对象。
    ③、代理模式    :为其他对象提供一种代理以控制对这个对象的访问。
    ④、工厂模式(Factory Pattern):在创建对象时使用工厂方法,而不是直接实例化对象。这使得代码更具灵活性,
    因为可以随时更改所创建的对象类型,而无需修改大量代码。
    


4、link和@import的区别


<link>可以引入CSS、JavaScript、icon等资源,而@import只能引入CSS。
<link>标签可以放在文档的头部或者尾部,而@import只能放在CSS文件的头部。
当页面加载时,<link>标签引入的资源会同时开始加载,而@import引入的CSS文件会等到页面全部加载完再开始加载。
<link>标签支持media属性,可以根据不同的媒体类型加载不同的CSS文件,而@import不支持。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值