11、url的组成?输入url 地址打开页面都做了什么事情? 12、什么是MVVM? 13、异步转化同步? 14、new一个对象的过程? 15、let const var 的区别?
时间: 2023-11-29 16:03:56 浏览: 41
11. URL由以下组成部分:
- 协议(protocol):指定访问资源所使用的协议,例如HTTP、HTTPS、FTP等;
- 域名(domain name):指定服务器的名称,可以使用IP地址代替;
- 端口号(port):指定访问服务器的端口号,大多数协议都有默认的端口号;
- 路径(path):指定服务器上资源的路径;
- 查询参数(query):向服务器传递的参数,例如搜索关键字等;
- 片段标识符(fragment):指定文档中的片段标识符,例如HTML文档的锚点。
打开一个网页的过程如下:
- 浏览器解析URL地址,获取服务器IP地址;
- 浏览器与服务器建立TCP连接;
- 浏览器发送HTTP请求;
- 服务器响应HTTP请求,返回HTML文件;
- 浏览器解析HTML文件,并请求HTML文件中包含的其他资源(例如图片、CSS、JavaScript等);
- 浏览器渲染HTML页面。
12. MVVM是Model-View-ViewModel的缩写,是一种前端架构模式。MVVM将前端应用程序分为三个部分:模型(Model)、视图(View)和视图模型(ViewModel)。模型表示数据和业务逻辑,视图负责显示数据和接收用户输入,视图模型是连接模型和视图之间的桥梁,负责处理视图中的业务逻辑和数据绑定。
13. 异步转化同步是指将异步操作转化为同步操作的过程。异步操作通常使用回调函数来处理结果,而同步操作会立即返回结果。将异步操作转化为同步操作可以方便代码编写与理解,但也会导致程序阻塞,影响性能。
14. new一个对象的过程包括以下几个步骤:
- 创建一个新对象;
- 将该对象的__proto__属性指向构造函数的prototype属性;
- 将构造函数的this指向新对象,并执行构造函数;
- 如果构造函数返回一个对象,则返回这个对象;否则返回新对象。
15. let、const和var都是声明变量的关键字。它们的区别如下:
- let和const是块级作用域,var是函数作用域;
- let和var可以重复声明同一个变量,const不可以;
- let和var声明的变量可以被修改,const声明的变量是常量,不可修改;
- const必须在声明时进行初始化赋值,let和var可以不初始化。