- 博客(12)
- 收藏
- 关注
原创 JavaScript中的数据类型?存储上的差别?
数组是一组有序的数据,但跟其他语言不同的是,数组中每个槽位可以存储任意类型的数据。是一个引用类型,在赋值操作过程汇总,实际是将堆内存对象在栈内存的引用地址复制了一份给了。当我们把变量赋值给一个变量时,解析器首先要确认的就是这个值是基本类型值还是引用类型值。引用类型数据存放在堆中,每个堆内存对象都有对应的引用地址指向它,引用地址存放在栈中。,虽然两个变量的值相等,但是两个变量保存了两个不同的内存地址。字符串是不可变的,意思是一旦创建,它们的值就不能变了。的值为一个基本类型,是存储在栈中,将。
2024-12-07 14:19:24
631
原创 理解ES6中 Promise的?使用场景?
Promise,译为承诺,是异步编程的一种解决方案,比传统的解决方案(回调函数)更加合理和更加强大在以往我们如果处理多层异步操作,我们往往会像下面那样编写我们的代码console.log('得到最终结果: ' + finalResult);阅读上面代码,是不是很难受,上述形成了经典的回调地狱现在通过Promise的改写上面的代码})})console.log('得到最终结果: ' + finalResult);})瞬间感受到promise链式操作减低了编码难度代码可读性明显增强。
2024-12-04 17:18:27
949
原创 对象新增了哪些扩展?
Object.getOwnPropertyNames(obj):回一个数组,包含对象自身的所有属性(不含 Symbol 属性,但是包括不可枚举属性)的键名。Object.keys(obj):返回一个数组,包括对象自身的(不含继承的)所有可枚举属性(不含 Symbol 属性)的键名。返回一个对象自身的(不含继承的)所有可遍历(enumerable)属性的键值对的数组。返回自身的(不含继承的)所有可遍历(enumerable)属性的键名的数组。在解构赋值中,未被读取的可遍历的属性,分配到指定的对象上面。
2024-10-19 10:41:24
1471
原创 ES6中数组新增了哪些扩展?
如果为负值,表示从末尾开始计算。定义了遍历器(Iterator)接口的对象,都可以用扩展运算符转为真正的数组。注意:通过扩展运算符实现的是浅拷贝,修改了引用指向的值,会同步反映到新数组。还可以接受第二个参数,用来对每个元素进行处理,将处理后的值放入返回的数组。参数是一个回调函数,接受三个参数依次为当前的值、当前的位置和原数组。如果将扩展运算符用于数组赋值,只能放在参数的最后一位,否则会报错。默认只会“拉平”一层,如果想要“拉平”多层的嵌套数组,可以将。参数的逆运算,将一个数组转为用逗号分隔的参数序列。
2024-10-14 09:29:16
649
原创 说说var、let、const之间的区别
实际上保证的并不是变量的值不得改动,而是变量指向的那个内存地址所保存的数据不得改动。对于复杂类型的数据,变量指向的内存地址,保存的只是一个指向实际数据的指针,,我们能够对一个变量进行多次声明,后面声明的变量会覆盖前面的变量声明。对于简单类型的数据,值就保存在变量指向的那个内存地址,因此等同于常量。不存在变量提升,即它们所声明的变量一定要在声明后使用,否则报错。声明的变量存在变量提升,即变量可以在声明之前调用,值为。声明一个只读的常量,一旦声明,常量的值就不能改变。声明的变量既是全局变量,也是顶层变量。
2024-09-30 15:00:00
433
原创 CSS如何画一个三角形?原理是什么?
在前端开发的时候,我们有时候会需要用到一个三角形的形状,比如地址选择或者播放器里面播放按钮通常情况下,我们会使用图片或者svg去完成三角形效果图,但如果单纯使用css如何完成一个三角形呢?实现过程似乎也并不困难,通过边框就可完成。
2024-09-30 10:30:20
399
原创 em/px/rem/vh/vw区别
项目开发中,会用到pxem这几个单位,它可以适用于大部分的项目开发,且拥有比较良好的兼容性,但CSS3开始,浏览器对计量单位的支持又提升到了另外一个境界,新增了remvhvwvm等一些新的计量单位px:绝对单位,页面按精确像素展示em:相对单位,基准点为父节点字体的大小,如果自身定义了font-size按自身来计算,整个页面内1em不是一个固定的值rem:相对单位,可理解为root em, 相对根节点html的字体大小来计算vh、vw:主要用于页面视口大小布局,在页面布局上更加方便简单。
2023-08-15 11:09:35
156
原创 css选择器有哪些?优先级?哪些属性可以继承?
类选择器、属性选择器和伪类选择器(Class Selectors, Attribute Selectors, and Pseudo-class Selectors):通过在CSS中使用.(点号)、[]和:定义的选择器。元素选择器和伪元素选择器(Element Selectors and Pseudo-element Selectors):通过在CSS中直接使用元素名称定义的选择器,以及通过::定义的伪元素选择器。子选择器(.myClass>one_1),选择父元素为.one的所有.one_1的元素。
2023-08-02 09:06:42
641
原创 盒子模型的理解
当对一个文档进行布局(layout)的时候,浏览器的渲染引擎会根据标准之一的 CSS 基础框盒模型(CSS basic box model),将所有元素表示为一个个矩形的盒子(box)CSS 中的 box-sizing 属性定义了引擎应该如何计算一个元素的总宽度和总高度。,即边框,围绕元素内容的内边距的一条或多条线,由粗细、样式、颜色三部分组成。,即内边距,清除内容周围的区域,内边距是透明的,取值不能为负,受盒子的。,即外边距,在元素外创建额外的空白,空白通常指不能放其他元素的区域。只是内容高度,不包含。
2023-07-25 10:03:50
204
原创 HTML标签的命名/CSS命名大全
页面结构命名page:代表整个页面,用于最外层。 wrap:外套,将所有元素包在一起的一个外围包,用于最外层 wrapper:页面外围控制整体布局宽度,用于最外层 container:一个整体容器,用于最外层 head、header:页头区域,用于头部 nav:导航条 content:内容,网站中最重要的内容区域,用于网页中部主体 main:网站中的主要区域(表示最重要的一块位置),用于中部主体内容 column:栏目 sidebar:侧栏 foot、footer:页尾、页脚。网站一
2023-07-24 16:36:04
753
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅