- 博客(19)
- 收藏
- 关注
转载 我不知道的深拷贝和浅拷贝
javascript基本数据类型基本数据类型主要是:String,Number,Boolean,Null,Undefined,Symbol基本数据类型存放在栈中基本数据类型值不可变基本类型的比较是值的比较基本类型的比较是值的比较,只要它们的值相等就认为他们是相等的,例如: var a = 1; var b = 1; console.log(a === b);//true 复制代码比较的时候最好使用严格等,因为 == 是会进行类型转换的,比如: var a = 1; v.
2020-12-16 17:44:14
89
转载 我不知道的javascript创建对象方式
通过Object构造函数创建对象 var person = new Object(); person.name = "nianyuyu"; person.age = 22; person.sayName = function(){ alert(this.name); } person.sayName 通过字面量创建对象 var person = { name:"nainyuyu", age:22, job:"Software Engineer
2020-12-15 19:48:02
110
原创 我不知道的css布局
table表格布局早期表格布局的解析不是流式的,如果你的表格很长,那浏览器会把整个表格的代码拉完以后才解析,这会造成用户等待的时间过长,进而影响用户体验。但是现在浏览器做了优化,表格也是流式解析的,但是表格布局还存在语义化不明确等问题。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>CSS 布局</title></he
2020-12-14 14:16:46
87
原创 我不知道的css line-height
基线、底线、顶线与行高 line-height撑开了块元素的高度 <p>这是一段文字,这里有个<em>em</em> 标签。</p>如上面一段普普通通的代码,却包含了4种盒子:“内容区域”(content area),是一种围绕文字看不见的盒子,可理解为选中文字蓝色背景区域,如下图。“内容区域”的大小与 font-size 大小相关;“内联盒子”(inline-boxes),“内联盒子”不会让内容成块显示,而是排成一行。
2020-12-06 17:04:41
97
原创 我不知道的css float
float的设计初衷float被设计出来的初衷是用于——文字环绕效果。即:一个图片一段文字,图片float:left之后,文字会环绕图片。<!DOCTYPE html><head> <style> #image{ float: left; } </style> <title></title></head><body>
2020-12-05 11:23:11
81
原创 我不知道的css position
css的position有一下几个值:absolute(绝对定位)元素会脱离文档流,不占用原本的空间,后面的元素会顶上去不论元素是行内还是块级元素,都会生产一个块级框<!DOCTYPE html><head> <style> #father{ background: yellow; position: absolute; width: 200px;
2020-12-04 15:16:20
123
原创 我不知道的javascript作用域
什么是作用域作用域是指当前正在执行的代码能够访问到变量的范围。常见的作用域主要分为几个类型:全局作用域、函数作用域、块状作用域、动态作用域。对象类型global window全局作用域function函数作用域(局部作用域){}块状作用域this动态作用域全局作用域在代码中任何地方都能访问到的对象拥有全局作用域,一般来说以下几种情形拥有全局作用域:最外层函数和在最外层函数外面定义的变量拥有全局作用域所有末定义直接赋值的变量自动声明为拥有全局作
2020-12-01 19:56:58
72
原创 我不知道的HTML元素属性
imgtitle:鼠标滑到元素上的时候显示该属性。alt:是的特有属性,是图片内容的等价描述,用于图片无法加载时显示、读屏器阅读图片,可以提高图片的高可访问行,搜索引擎会重点分析。
2020-12-01 16:57:49
87
原创 ES6新特性(一):箭头函数
语法箭头函数相当于匿名函数没有参数,单条语句var f = ()=>{console.log("hello")}f();只有一个参数,单条语句var f = (x)=>{console.log(x)}f(1);// 如果只有一个参数,可以省略括号: var f = x =>{console.log(x)}f(1);//如果返回值仅仅只有一个表达式(expression), 还可以省略大括号: var f = x => console.log
2020-12-01 15:18:12
133
原创 我不知道的javascript关键字——this
this的指针作用域总结在全局执行环境中使用this,表示Global对象,在浏览器中就是window对象。 console.log(this); //Window console.log(typeof this); //object console.log(this === window); //true 当在函数执行环境中使用this时,情况就有些复杂了。如果函数没有明显的作为非window对象的属性,而只是定义了函数,不管这个函数是不是定义在另一个函数中,这个函数中的t
2020-12-01 14:34:15
136
原创 我不知道的浏览器工作原理(二)
文章概述:如何解析请求回来的HTML代码,DOM树又是如何构建的词是如何拆分的根据这样的分析,现在我们讲讲浏览器是如何用代码实现的,我们设想,代码开始从HTTP协议收到的字符流读取字符。在接受第一个字符之前,我们完全无法判断这是哪一个词(token),随着我拼出的字符串越来越多,拼出其他的内容可能性就越来越少。比如,假设我们接受了一个字符"<",我们一下子就知道这不是一个文本节点,之后我们再读一个字符,比如x,那么我们一下子就知道这不是注释和CDATA了,接下来我们就一直读,知道遇到“&g
2020-11-30 19:36:22
73
原创 我不知道的浏览器工作原理(一)
浏览器做了什么?对于浏览器实现者来说,他们做的事情就是把一个URL变成一个屏幕上显示的网页。其过程如下:浏览器首先使用HTTP协议或者HTTPS协议,向服务端请求页面将请求回来的HTML代码经过解析,构建DOM树计算DOM树上的CSS属性最后根据CSS属性对元素逐个进行渲染,得到内存中的位图一个可选的步骤是对位图进行合成,这会极大地增加后续绘制的速度合成之后,再绘制到界面上 HTTP格式 HTTPSHTTPS是使用了加密通道来传输HTTP的内容,但是HTT
2020-11-26 17:48:23
80
原创 我不知道的javascript声明变量关键字:var,const,let
var关键字var声明的范围是函数作用域var操作符定义的变量会成为包含它的函数的局部变量 声明的变量会自动提升到函数作用域顶部 function aa(){ console.log(hello); // undefined var hello = "123"; } // 等价于如下代码 function aa(){ var hello;
2020-11-26 11:08:38
312
原创 Vue学习(三):Vue常用特性
表单操作元素操作<!DOCTYPE html><head> <style></style> <title>选项卡</title></head><body> <script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script> <div id="hello">
2020-11-25 17:47:18
73
原创 我不知道的css选择器
选择器分类基本选择器选择器含义*通配符选择器,匹配任何元素E标签选择器,匹配所有使用E标签的元素.infoclass选择器,匹配所有class属性中包含info的元素#footerid选择器,匹配所有id属性等于footer的元素 关系选择器选择器(css2.1)含义E,F多元素选择器,同时匹配所有E元素或F元素,E和F之间用逗号分隔E F后代元素选择器,匹配所有属于E元素后代的F元素,E和F之间用空
2020-11-24 16:09:52
50
原创 我不知道的HTML语义化
什么是语义化语义标签就是工作中经常会用到的一类标签,它们的特点是视觉表现上交互都差不多,主要的区别在于它们表示了不同的语义,比如大家会经常见到的section,nav。语义是我们说话表达的意思,多数的语义实际上都是由文字来承载的,语义类标签则是纯文字的补充,比如:标题,自然段,章节,列表,这些内容都是纯文字无法表达的,我们需要依靠语义标签代为表达。 语义化的好处语义化标签对开发者更为友好,使用语义化标签增强了可读性,即使在没有css的时候,开发者也能清晰的看出网页结构,便于团队的开发
2020-11-16 22:25:48
97
原创 Vue学习(二):Vue指令汇总
Vue指令概念指令的本质就是自定义属性,指令格式:以v-开始(比如v-cloak)Vue指令汇总v-cloak插值表达式存在问题“闪动”,可以使用v-cloak解决这个问题,解决该问题的原理:先隐藏,替换好之后再显示最终的值<!DOCTYPE html><head> <style> [v-cloak]{ display: none; } </style&g..
2020-11-16 22:16:25
124
原创 我不知道的javascript异步机制
js是单线程的单线程说明在某个特定时刻只有特定的代码能够被执行,并阻塞其他的代码。JavaScript 代码的执行是单线程的(同一时刻内只会有一段代码在执行)js的中的同步和异步既然JS是单线程,那就像只有一个窗口的银行,客户需要排队一个一个办理业务,同理JS任务也要一个一个顺序执行。如果一个任务耗时过长,那么后一个任务也必须等着。那么问题来了,假如我们想浏览新闻,但是新闻包含的超清图片加载很慢,难道我们的网页要一直卡着直到图片完全显示出来?因此Javascript语言将任务的执行模式分成.
2020-11-14 11:29:07
99
原创 Vue学习(一):Vue模板语法
如何理解前端渲染前端渲染的几种方式原生js拼接 使用前端模板引擎 使用Vue特有的模板语法Vue模板语法差值表达式 指令 事件绑定 属性绑定 样式绑定 分支循环结构...
2020-11-12 17:35:05
71
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人