• 欢迎光临~

2022/5/31

开发技术 开发技术 2022-05-31 次浏览

行内元素有那些 块级元素有那些 空元素有哪些

  • 行内元素:不能实现宽度高度,横向显示

    • a,span,i,em,var,b,strong,sup,sub,s,del,label,font,mark
  • 块级元素:能设置宽度高度,纵向显示,并且默认站宽一整行

    • h1~h6,p,div,ul,ol,li,dl,dt,dd,table,form,hr,fieldset,legend,marquee,iframe,header,nav,footer,section,main,figure,figcaption,hgroup,aside,article
  • 行内块元素:能设置宽度高度,并且横向显示

    • input,img,select,textarea
  • 空元素:就是单标签

    • input,img,br,meta,link,hr
  • 置换元素:因为默认自带宽度告诉浏览器能进行根据类型路径加载对应的内容

    • input,img,select,textarea

html页面渲染方式和流程

  • 用户输入url地址,浏览器根据域名寻找IP地址

浏览器向服务器发送http请求,如果服务器段返回以301之类的重定向,浏览器根据相应头中

的location再次发送请求服务器端接受请求,处理请求生成html代码,返回给浏览器,这时的html页面代码可能是经过压缩的浏览器接收服务器响应结果,如果有压缩则首先进行解压处理,紧接着就是页面解析渲染

  • 解析渲染该过程主要分为以下步骤

解析HTML----构建DOM树----DOM树与CSS样式进行附着构造呈现树------布局、绘制

  • 详细过程如下

1)用户输入网址(假设是个html页面,并且是第一次访问),浏览器向服务器发出请求,服务

器返回html文件。

2)浏览器开始载入html代码,发现标签内有一个标签引用外部CSS文件。

3)浏览器又发出CSS文件的请求,服务器返回这个CSS文件。

4)浏览器继续载入html中部分的代码,并且CSS文件已经拿到手了,可以开始渲染页面了。

5)浏览器在代码中发现一个标签引用了一张图片,向服务器发出请求。此时浏览器不会等到图

片下载完,而是继续渲染后面的代码。

6)服务器返回图片文件,由于图片占用了一定面积,影响了后面段落的排布,因此浏览器需要

回过头来重新渲染这部分代码。

7)浏览器发现了一个包含一行Javascript代码的标签,赶快运行它。

8)Javascript脚本执行了这条语句,它命令浏览器隐藏掉代码中的某个

内置对象

JS 中分为七种内置类型,七种内置类型又分为两大类型:基本类型和对象( Object )。

  • 基本类型有六种: null , undefined , boolean, number , string , symbol 。其中 JS 的数字类型是浮点类型的,没有整型。并且浮点类型基于 IEEE 754 标准实现,在使用中会遇到某些 Bug。 NaN 也属于 number 类型,并且 NaN 不等于自身。

  • 对于基本类型来说,如果使用字面量的方式,那么这个变量只是个字面量,只有在必要的时候才会转换为对应的类型。

  • 内置对象就是指 JS 语言自带的一些对象,这些对象供开发者使用,并提供了一些常用的或是最基本而必要的功能(属性和方法)
    内置对象最大的优点就是帮助我们快速开发
    JavaScript 提供了多个内置对象:Math、 Date 、Array、String等

    • Math 对象不是构造函数,它具有数学常数和函数的属性和方法。跟数学相关的运算(求绝对值,取整、最大值等)可以使用 Math 中的成员。Math数学对象 不是一个构造函数 ,所以我们不需要new 来调用 而是直接使用里面的属性和方法即可
    • Date 对象和 Math 对象不一样,他是一个构造函数,所以我们需要实例化后才能使用Date 实例用来处理日期和时间 var date = new Date();
    • 数组对象 (创建的两种方式为: 字面量创建 和 new Array())
    • 字符串对象 String

深拷贝和浅拷贝

  • 浅拷贝是创建一 个新对象,这个对象有着原始对象属性值的一-份精确拷贝。如果属性是基本类型,拷贝的就是基本类型的值,如果属性是引用类型,拷贝的就是内存地址。(Object.assing()和JSON转换都可以实现深拷贝)
  • 深拷贝是将一 个对象从内存中完整的拷贝-份出来,从堆内存中开辟- -个新的区域存放新对象。
  • 区别:浅拷贝基本类型之前互不影响,引用类型其中一个对象改变了地址,就会影响另-一个对象;深拷贝改变新对象不会影响原对象,他们之前互不影响。
程序员灯塔
转载请注明原文链接:2022/5/31
喜欢 (0)