全部文章

1299 篇文章

八股文03-14
阅读

2024年JavaScript常见面试题

基础问题 1、 JavaScript是单线程的吗? 2、 请介绍JavaScript引擎的主要构成以及引擎是如何工作的? 3、 请介绍JavaScript的事件循环并讲解它对异步编程的意义? 4、 请解释下JavaScript里的“提升”概念? 5、 请讲下var、let和const的差异? 6、 JavaScript有哪些数据类型? 7、 什么是回调函数和回调地狱? 8、 请介绍下Promise? 9、 请介绍下async/await...

#面试
前端03-14
阅读

如何给网站安装百度统计代码

背景: 目前国内大部分网站都在网站添加了百度统计代码,用来统计网站的数据,例如网站的实习数据,来源,登陆页面,离开页面,停留时间等。如果你的网站希望能采集到这么详细的数据,并且网站服务器也在国内的话,可以在网站代码里面添加百度统计代码,然后进入百度统计的后台就可以查看到详细的网站运营指标数据。 操作步骤如下: 1、点击进入百度统计的官网, : 2、注册一个账号,如果有百度的账号可以直接登陆: 3、登陆后添加网站: 操作路径,【管理】 【...

#学习
前端03-13
阅读

JS调用媒体设备失败 --- getUserMedia undefine 问题

解决: getUserMedia undefine 问题 问题: http请求的 chrome,edge, fireFox 等主流浏览器由于安全限制将不会暴露getUserMedia 方法,所以就不能够访问用户的媒体设备。 为什么会出现这种情况? 首先本地开发 127.0.0.1 不会出现这种情况,这种情况仅存在于线上环境并且没有SSL证书的HTTP协议网址。 如何解决 1\. 使用HTTPS协议 为线上环境申请域名,配置SSL证书,实...

#学习
前端03-13
阅读

在非安全的http协议下,使用navigator.mediaDevices.getUserMedia

在非安全的 协议下,使用 方法会受到浏览器的限制,并且可能会导致无法访问用户的媒体设备。然而,有一些浏览器提供了一些设置选项来允许在 协议下使用媒体设备。以下是一种可能的解决方案: 在Chrome浏览器中,你可以通过以下步骤来启用 协议下的媒体设备访问: 1. 打开Chrome浏览器,在地址栏输入 并按下回车键。 2. 在搜索框中搜索 "Insecure origins treated as secure",或者直接定位到该选项。 3....

javascript03-12
阅读

H5 下拉刷新如何实现

最近我需要做一个下拉刷新的功能,实现功能后我发现,它需要处理的情况还蛮多,于是我整理了这篇文章。 下图是我实现的效果,分为三步:开始下拉时,屏幕顶部会出现加载动画;加载过程中,屏幕顶部高度保持不变;加载完成后,加载动画隐藏。 首先我会讲解下拉的原理、根据原理写出初始代码;然后我会说明代码存在的缺陷、解决缺陷并做些额外优化;最后我会给出完整代码,并做一个总结。 下拉的原理 如图所示,蓝色框代表视口,绿色框代表容器,橙色框代表加载动画。最开...

#学习
移动端web03-12
阅读

h5调用手机摄像头踩坑

一般业务也很少接触摄像头,有也是现成的工具库扫个二维码。难得用一次,记录下踩坑。 2.1. 这个就不用多说了,缺点就是没办法自定义界面,它是调用的系统原生相机界面。 2.2. 由于我需要自定义界面,就像下面这样: 所以我选择了这个方案,这个 使用起来其实很简单: 可以看到这个效果。 如果你复制我的代码,在 上肯定能运行,但是你想在手机上试试的时候就会发现很多问题。 3.1. 需要 由于浏览器的安全设置,除了 和 连接,你都没办法获取到...

#学习
javascript03-12
阅读

html-input直接调用手机设备

\ HTML5官方文档解释:capture属性用于调用设备的摄像头或麦克风。 当accept=”audio/\ 或video/\ ”时capture只有两种值,一种是user,用于调用面向人脸的摄像头(例如手机前置摄像头),一种是environment,用于调用环境摄像头(例如手机后置摄像头)。 当accept=”audio”时,只要有capture就调用设备麦克风,忽略user和environment值。 至于网上提到的camera和...

#学习
vscode03-12
阅读

JS或TS 语言服务已立即崩溃 5 次。不会重新启动该服务

报错 JS/TS 语言服务已立即崩溃 5 次。不会重新启动该服务。 这可能是由以下其中一个扩展提供的插件引起的: .volar, Vue.vscode typescript vue plugin 请在针对 VS Code 提交问题之前尝试禁用这些扩展 问题原因 是 Vue Official 更新到最新版本后引起的,属于插件bug 解决办法 降级插件 Vue Official 到 1.8.27或以下版本试试 \ 点了后等一会,不要动,获取...

#学习
javascript03-12
阅读

为什么[ ] == [ ] 为false, [ ] == ![ ] 为true?

这两个表达式涉及到 JS 中类型转换和比较操作符的行为。JS 是一种灵活的动态语言,它有一套自己的类型转换规则,有时会导致一些看似奇怪的结果。在理解这两个表达式的行为时,需要深入了解 JS 的类型转换机制以及比较操作符的工作方式。 首先介绍一下 JS 中的类型转换机制,JS 中的类型转换通常发生在两种情况下: 隐式类型转换 和 显式类型转换 。隐式类型转换是 JS 自动执行的类型转换,通常发生在需要不同类型的值的运算或比较时。而显式类型...

#面试