前端笔试题(二)

1.常见的盒子水平垂直居中的方法有哪些

  • 使用定位

  • 使用margin:auto;

  • display:flex; justify-content:center; align-items:center;

  • 使用transform: translate(-50%,-50%);

2.简述下深浅拷贝的原理和常用的方法

浅拷贝

对于基本类型数据来说,拷贝的是值;对于引用数据来说,拷贝了地址,因此拷贝后的对象和原对象会共用一个内存地址,因此,属性值会同步变化

浅拷贝常用的方法

① Object.assign:可以直接拷贝对象进行数据的处理(还有就是可以实现对象的拷贝合并)

② 数组的slice和concat方法(第一个可以截取数组的值、第二个可以用来连接数组。实际上他俩还可以用来进行数组的浅拷贝复制)(是浅拷贝数组的一个常用方法)

③ Es6展开运算符...(是浅拷贝最简单的方式,而且还很强大,数组和对象都可以用它来进行浅拷贝)

深拷贝

对于引用数据类型来说,就是拷贝原始对象的所有属性与方法,在内存中重新开辟一块内存空间进行存储

深拷贝常用的方法

① Json.stringify(Json.parse( ))(是深拷贝里面最容易的一种方法)

② 递归深拷贝(属于递归版的深拷贝实现方法,这个是简易版的实现方法)

3.vue中computed和watch的区别

相同:

都是观察页面的数据变化的;都与data同级

不同:

computed会缓存计算的结果,只有计算属性依赖的数据变化时,才会重新进行计算

Watch不支持缓存,数据变化的时候直接进行相应的操作

监听每次都要执行函数

数据变化时执行异步,使用watch

Watch支持异步,可以监听数据的变化

watch监听单个,computed可以同时计算多个

4.什么是同源策略

协议、域名、端口三者都相同

5.考察局部作用域

请写出三个log代码的输出值

可以看到下方代码中,函数体中也有一个b、函数名也是b,这里输出的b其实是整个函数体也就是函数b,和外面的b其实是没多大关系的

可以说,全局的那三行代码其实是都没有什么关系的,可以忽略

这里其实也考察了++在前和在后的区别

  • ++在后,先输出再自增

  • ++在前,先自增再输出

var a=1;
a++;
var b=10;
(function b(){var a=1;console.log(a++);//1console.log(++a);//3console.log(b);//null
})()

6.考察let和var的区别

这里考察的是let和var区别中的是否可以重新进行赋值

for (var i = 0; i < 5; i++) {setTimeout(function() {console.log(i);//5 5 5 5 5})
};
//每⼀次for循环的时候,setTimeout都执⾏⼀次,但是⾥⾯的函数没有被执⾏,⽽是被放到了任务队列⾥⾯,等待执⾏,for循环了5次,就放了5次,当主线程执行完成后,才进入任务队列里面执行
for (let i = 0; i < 5; i++) {setTimeout(function() {console.log(i);//0 1 2 3 4})
};
//因为for循环头部的let不仅将 i 绑定到for循环中,事实上它将其重新绑定到循环体的每一次迭代中,确保上一次迭代结束的值重新被赋值。setTimeout 里面的 function( ) 属于一个新的域,通过 var 定义的变量会不断覆盖之前的值,通过 let 定义的变量会产生块级作用域,后面赋值的变量不会改变前面的值,因为它们处于不同的块级作用域

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/626511.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【RT-DETR有效改进】ShapeIoU、InnerShapeIoU关注边界框本身的IoU(包含二次创新)

前言 大家好&#xff0c;我是Snu77&#xff0c;这里是RT-DETR有效涨点专栏。 本专栏的内容为根据ultralytics版本的RT-DETR进行改进&#xff0c;内容持续更新&#xff0c;每周更新文章数量3-10篇。 专栏以ResNet18、ResNet50为基础修改版本&#xff0c;同时修改内容也支持Re…

十、Three场景实现多个物体的合并

Three场景实现多个物体的合并 目的 产品需求是让物体的光柱墙包含一个多边形的区域,二而我的多边形只能使用原型,方向,多边形。那么再研究的时候就需要将这些多边形合并成为一个形状,那么就行实现了。 原先的图形 如上图,是两个mesh组成的。首先寻找mesh合并的方法。 第…

分布式限流要注意的问题

本文已收录至我的个人网站&#xff1a;程序员波特&#xff0c;主要记录Java相关技术系列教程&#xff0c;共享电子书、Java学习路线、视频教程、简历模板和面试题等学习资源&#xff0c;让想要学习的你&#xff0c;不再迷茫。 为什么需要匀速限流 同学们回想一下在Guava小节里…

20240109金融读报1分钟小得

金融科技是基于大数据、云计算、人工智能、区块链等一系列技术创新。大数据作为金融分析的基石&#xff0c;人工智能为提升效率助力 金融发力点&#xff1a;科技金融、绿色金融、普惠金融、养老金融分别聚焦支持科技创新、绿色低碳、民生普惠、老年群体领域的金融服务和产品

MySQL运维篇(二)主从复制

一、概述 主从复制是指将主数据库的 DDL 和 DML 操作通过 二进制日志 传到从库服务器中&#xff0c;然后在从库上对这些日志重新执行&#xff08;也叫重做&#xff09;&#xff0c;从而使得从库和主库的数据保持同步。 MySQL 支持一台主库同时向多台从库进行复制&#xff0c; 从…

聊一聊 C# 的线程本地存储TLS到底是什么

一&#xff1a;背景 1. 讲故事 有朋友在后台留言让我说一下C#的 ThreadStatic 线程本地存储是怎么玩的&#xff1f;这么说吧&#xff0c;C#的ThreadStatic是假的&#xff0c;因为C#完全是由CLR&#xff08;C&#xff09;承载的&#xff0c;言外之意C#的线程本地存储&#xff…

基于Java+SSM+MYSQL的助农特色农产品销售系统详细设计和实现【附源码】

基于JavaSSM助农特色农产品销售系统详细设计和实现【附源码】 &#x1f345; 作者主页 央顺技术团队 &#x1f345; 欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; &#x1f345; 文末获取源码联系方式 &#x1f4dd; &#x1f345; 查看下方微信号获取联系方式 承接各种定…

调试openjdk11源码报段错误异常Segmentation fault解决方案

解决方案-忽略信号&#xff1a;(gdb) handle SIGSEGV pass noprint nostop ##openjdk11源码编译简单教程 传送门centos7下openjdk11源码下载编译安装_openjdk11下载-CSDN博客 ##调试openjdk11源码报段错误异常Segmentation fault解决方案 Program received signal SIGSEGV,…

高防IP如何有效应对网站DDOS攻击

高防IP如何有效应对网站DDOS攻击&#xff1f;随着互联网的发展&#xff0c;网站安全问题变得越来越重要。DDoS攻击作为一种常见的网络攻击方式&#xff0c;给网站的稳定性和可用性带来了巨大威胁。而高防IP作为一种专业的网络安全解决方案&#xff0c;能够有效地应对DDoS攻击&a…

连接器应用案例详解 | prodesign加速卡采用Samtec NovaRay® 极高密度阵列

【摘要/前言】 ChatGPT最近受到的欢迎和关注凸显了人工智能在影响日常生活方面所取得的进展。 有谁曾使用 ChatGPT 完成家庭作业或撰写博客&#xff1f;提前申明&#xff1a;这一篇文章绝对是真人撰写~ 无论如何&#xff0c;像ChatGPT这样的聊天机器人和类似服务的支柱都是高…

芯片有关新闻-China chip imports suffer steepest drop on record after US curbs

Jan 16, 2024 9:01 am 由于长期的经济不确定性和美国的出口管制&#xff0c;中国的芯片进口去年遭遇了有记录以来的最大降幅。 全球最大半导体市场的集成电路进口额下降了15.4%&#xff0c;至3494亿美元&#xff0c;这是自2004年中国海关数据公布以来的最大跌幅&#xff0c;并…

数据库系统原理总结之——数据管理技术的发展

第八章 数据管理技术的发展 第八章 数据管理技术的发展一、数据库技术发展 ★★ 二、数据仓库 ★★★ 三、数据挖掘的功能 ★★★ 四、大数据的定义 ★★ 五、大数据存储 ★ 六、NoSQL 系统支持的数据存储模型 ★★★★ 七、MapReduce 技术 ★ 第八章 数据管理技术的发展

自适应动量因子梯度下降BP神经网络的人口预测

目录 摘要 BP神经网络参数设置及各种函数选择 参数设置 训练函数 传递函数 学习函数 性能函数 显示函数 前向网络创建函数 BP神经网络训练窗口详解 训练窗口例样 训练窗口四部详解 基于BP神经网络的租金预测 代码下载:bp数据人口预测.rar,(代码完整,数据齐全)资源-CSDN文…

Controller层自定义注解拦截request请求校验

一、背景 笔者工作中遇到一个需求&#xff0c;需要开发一个注解&#xff0c;放在controller层的类或者方法上&#xff0c;用以校验请求参数中(不管是url还是body体内&#xff0c;都要检查&#xff0c;有token参数&#xff0c;且符合校验规则就放行)是否传了一个token的参数&am…

BigDecimal中使用ROUND_HALF_UP进行四舍五入

一、BigDecimal 简介 BigDecimal 类位于 java.math 包中&#xff0c;它提供了更加精确的算术运算&#xff0c;使用户完全控制舍入行为。 如果未指定舍入模式&#xff0c;并且无法表示确切的结果&#xff0c;则抛出异常; 否则&#xff0c;可以通过操作提供适当的 MathContext 对…

学生党有必要买台灯吗?央视公认最好的护眼灯

我认为学生党还是很有必要买台灯的&#xff01;现在的孩子学业压力都比较大&#xff0c;白天光线亮度比较充足&#xff0c;对眼睛没有太大影响。不过夜晚的时候周围环境的光线都逐渐暗下来&#xff0c;如果单靠室内的灯光来学习&#xff0c;那肯定是远远不够的&#xff01;不仅…

Pandas加载大数据集

Scaling to large datasets — pandas 2.1.4 documentationhttps://pandas.pydata.org/docs/user_guide/scale.html#use-efficient-datatypes官方文档提供了4种方法&#xff1a;只加载需要的列、转化数据类型、使用chunking&#xff08;转化文件存储格式&#xff09;、使用Dask…

山海鲸:助力企业实现内外数据整合与价值挖掘

作为山海鲸的开发者&#xff0c;我们深知数字化转型对于企业发展的重要性。在不断钻研如何提升山海鲸可视化这款免费产品的实用性同时&#xff0c;也在不断推出各行实用解决方案&#xff0c;本文将介绍山海鲸企业数字化转型发展解决方案&#xff0c;探讨如何通过数据驱动创新&a…

es集群信息简单查询命令

&#xff08;1&#xff09;查询索引信息 curl http://127.0.0.1:9201/_cat/indices?v curl http://127.0.0.1:9201/_cat/indices?v | grep red curl http://127.0.0.1:9201/_cat/indices?v | grep yellow &#xff08;2&#xff09;查询mapping信息 curl http://127.0.0.1:9…

类和对象特性

#include<iostream> #include<string> using namespace std; class peron{ public:peron(string person){cout << "peron调用构造函数" << endl;tperson person;}~peron(){cout << "peron调用析构函数" << endl;}//手…