js常考的面试题重新整理

面试必问:说一下 Java 虚拟机的内存布局?

我们通常所说的 Java 虚拟机(JVM)的内存布局,一般是指 Java 虚拟机的运行时数据区(Runtime Data Area),也就是当字节码被类加载器加载之后的执行区域划分。当然它通常是 JVM 模块的第一个面试问题,所以,接下来我们一起来看它里面包含了哪些内容。 官方定义 《Java虚拟机 ......
布局 内存 Java

Node.js 应用全链路追踪技术——全链路信息存储

本文主要介绍在Node.js应用中, 如何用全链路信息存储技术把全链路追踪数据存储起来,并进行相应的展示,最终实现基于业界通用 OpenTracing 标准的 Zipkin 的 Node.js 方案。 ......
链路 技术 信息 Node js

千姿百态,瞬息万变,Win11系统NeoVim打造全能/全栈编辑器(前端/Css/Js/Vue/Golang/Ruby/ChatGpt)

我曾经多次向人推荐Vim,其热情程度有些类似现在卖保险的,有的时候,人们会因为一些弥足珍贵的美好暗暗渴望一个巨大的负面,比如因为想重温手动挡的快乐而渴望买下一辆二十万公里的老爷车,比如因为所谓完美的音质而舍不得一个老旧的有线耳机,比如因为一个铜炉火锅而期待北京那漫长而寒冷的冬天。 ......

为什么 响应式数据被重新赋值了三次,但是监听回调只执行了一次

代码例子 const { createApp } = Vue const app = createApp({ components: [], template: ` <div> <button @click="handleClick">toggle</button> </div> `, data() ......
数据

CSS 3 所有的选择器整理(2023.2)

你知道的和你不知道的所有选择器。不包含尚未广泛实现的,也不包含已弃用的。 基本的选择器规则(Selector) 类型(Type)选择器 直接用标签匹配特定的元素 span { ... } p { ... } 类(Class)选择器 以.开头,匹配含有这个 class 的元素 .info { ... ......
2023.2 2023 CSS

面试被问到“类的加载过程”,怎么回答可以脱颖而出?

大家好,我是哪吒。 一、做一个小测试,通过注释,标注出下面两个类中每个方法的执行顺序,并写出studentId的最终值。 package com.nezha.javase; public class Person1 { private int personId; public Person1() { ......
脱颖而出 过程

浅谈JS词法环境

JavaScript 词法环境 本文主要讲解JS词法环境,我们将看到什么是词法环境,词法范围如何工作,函数内部的名称如何解析,内部属性,弄清楚词法环境利于我们理解闭包。让我们开始吧... 什么是词法环境? 在理解闭包时,最大的混淆来源是术语“词汇环境”,或者只是“词汇”这个词。在计算机科学中术语“词 ......
词法 环境

浅谈浏览器端 WebGIS 开发可能会用到的、提升效率的 js 库

前置说明 这篇介绍的在 Awesome GIS 基本上都有,经过我的筛选,在 npmjs.com 上也都能找到,方便融入日益强大的 npm 生态。不过这些库大部分都保留了全局库的形式,在非框架中也能使用。有一部分是浏览器 + NodeJS 双端可用的。 1. 与数据格式转换解析相关 1.1. 解析和 ......
效率 浏览器 WebGIS js

Node.js+Koa2+TypeScript技术概览

最近几年一直使用Node.js作为后端服务平台,通过Koa2框架中间件快速搭建Web服务,但是使用JavaScript开发大型后端服务时会使程序变得难以维护,继而使用TypeScript语言开发,使编译、调试、检查和代码管理变得更加容易。 下图是使用Koa2框架搭建后端服务的思维导图: 一、Node ......
概览 TypeScript 技术 Node Koa2

《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(5)-Charles如何设置捕获Https会话

1.简介 在大数据时代,互联网时代,个人信息安全尤为重要,网络安全在近日多起电信诈骗事情发酵下的情况下,引起国家,企业,个人对于互联网安全进一步的重视。而之前很多以http协议传输的网站出现的网站信息泄露,个人信息裸露在大数据的泳池中,让我们在遇到一个陌生网站的时候,都会格外考虑其安全性。通过认证S ......
Charles 教程 神器 保姆 Https

《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(6)-Charles安卓手机抓包大揭秘

1.简介 Charles和Fiddler一样不但能截获各种浏览器发出的 HTTP 请求,也可以截获各种智能手机发出的HTTP/ HTTPS 请求。 Charles也能截获 Android 和 Windows Phone 等设备发出的 HTTP/HTTPS 请求。 今天宏哥讲解和分享Charles如何 ......
Charles 教程 神器 保姆 手机

针对一个数组的排序,面试官会这样问

问:你写一个排序算法吧,顺便说一下其他的方式,可以吧? 题目:对数组 {1,3,6,1,8,22,0,1}进行排序 答: public static void main(String[] args) { String[] arr = {"1", "1", "7", "3", "9", "11", " ......
数组

C#11新特性整理

假期中有时间,整理了C#11的各个新特性,简单分享给大家。 一、使用VSCode新建一个.NET7.0的Console工程 <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFr ......
特性 11

Redis缓存何以一枝独秀?——从百变应用场景与热门面试题中感受下Redis的核心特性与使用注意点

在分布式盛行的今天,本地缓存明显无法满足分布式场景的缓存诉求。作为应对之法,集中式缓存被广泛的使用在各中分布式系统中,而使用最广泛的莫过于大家耳熟能详的Redis了,本篇开始聊一聊Redis相关的内容。 ......
一枝独秀 Redis 缓存 场景 特性

C#调用js库的方法

前言 用.net6开发一个Winform程序,处理Excel文件,并把结果导出Excel文件。 要用到两个算法,一是turf.js库的booleanPointInPolygon方法,判断经纬度坐标是否在区域内;二是经纬度纠偏算法,因为对方给的区域坐标集合有偏移,需要纠偏。 这两个算法,网上找C#的实 ......
方法

从面试题入手,畅谈 Vue 3 性能优化

前言 今年又是一个非常寒冷的冬天,很多公司都开始人员精简。市场从来不缺前端,但对高级前端的需求还是特别强烈的。一些大厂的面试官为了区分候选人对前端领域能力的深度,经常会在面试过程中考察一些前端框架的源码性知识点。Vuejs 作为世界顶尖的框架之一,几乎在所有的面试场景中或多或少都会被提及。 笔者之前 ......
性能 Vue

CF构造题1600-1800(1)

D. Same Count One(Polynomial Round 2022 (Div. 1 + Div. 2, Rated, Prizes!)) 题意 给定 $n$ 个长度为 $m$ 的 01 序列,每次操作可以选择两个序列a1, a2,并选择一个$pos$, std::swap(a1[pos] ......
1600 1800

《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(3)-再识Charles

1.简介 上一篇通过宏哥的介绍想必各位小伙伴或者童鞋们对Charles已经有了一个理性地认识,今天宏哥在从Charles的外貌介绍和分享一下,让小伙伴们或者童鞋们再对Charles有一个感性的认识,今天主要是对Charles的界面进行一个详细的介绍。 2.Charles主界面概览 Charles的主 ......
Charles 教程 神器 保姆

《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(4)-Charles如何设置捕获会话

1.简介 前边几篇宏哥介绍了Charles界面内容以及作用。今天宏哥就讲解和分享如何设置Charles后,我们就可以愉快地捕获会话,进行抓包了。因为上一篇许多小伙伴看到宏哥的Charles可以分开看到request和response,而自己的却看不到,因此有点蒙,有点疑惑。同样的版本显示的界面却是不 ......
Charles 教程 神器 保姆

Three.js 进阶之旅:新春特典-Rabbit craft go 🐇

兔年到了,祝大家身体健,康万事顺利。本文内容作为兔年新春纪念页面,将使用 Three.js 及 其他前端开发知识,创建一个以兔子为主题的 3D 简单的趣味页面 Rabbit craft go。本文内容包括使用纯代码创建三维浮岛、小河、树木、兔子、胡萝卜以及兔子的运动交互、浮岛的动画效果等。本文包含的... ......
之旅 Rabbit 128007 Three craft

为什么使用消息队列?我这样回答,面试官直说讲得很清楚

为什么要使用消息队列,六个字总结:解耦、异步、消峰 1)解耦 传统模式下系统间的耦合性太强。怎么说呢,举个例子:系统 A 通过接口调用发送数据到 B、C、D 三个系统,如果将来 E 系统接入或者 B 系统不需要接入了,那么系统 A 还需要修改代码,非常麻烦。 如果系统 A 产生了一条比较关键的数据, ......
队列 消息

如何在 Nuxt 3 中使用 wavesurfer.js

安装 wavesurfer.js 在项目中安装 wavesurfer.js npm install --save wavesurfer.js 常规方式引入 如果你的根目录中没有 components 目录则需要创建该目录,并在此目录中创建 WaveSurfer.vue 内容如下: <template ......
wavesurfer Nuxt js

来自一位十年.net研发老人的吐血整理:.Net技术栈-网址导航

业余时间为什么整理这个.net技术网址导航? 内容聚合:不用一个一个搜索,我们很快可以进入常用技术官网 提高效率:多看官方文档可以最快,最准确的掌握相关的技术资讯,不用被一些没理解透或者有偏差的技术分享所带偏. ......
网址导航 老人 网址 技术 net

Node.js躬行记(26)——接口拦截和页面回放实验

最近在研究 Web自动化测试,之前做了些实践,但效果并不理想。 对于 QA 来说,公司的网页交互并不多,用手点点也能满足。对于前端来说,如果要做成自动化,就得维护一堆的脚本。 当然,这些脚本也可以 QA 来维护,但前提是得让他们觉得做这件事的 ROI 很高,依目前的情况看,好像不高。 所以在想,做一 ......
接口 页面 Node js

从一道CTF题学习python字节码到源码逆向

概述: 该题来源为2022爱春秋冬季赛ezpython,难度不是很大刚好适合我这样的萌新入门 题目: 3 0 LOAD_CONST 1 (204) 3 LOAD_CONST 2 (141) 6 LOAD_CONST 3 (44) 9 LOAD_CONST 4 (236) 12 LOAD_CONST ......
字节 源码 一道 python CTF

重新捋一捋React源码之更新渲染流程

前言 前些天在看Dan Abramov个人博客(推荐阅读,站在React开发者的角度去解读一些API的设计初衷和最佳实践)里的一篇文章,其重点部分的思想就是即使不使用Memo(),也可以通过组合的方式来减少组不必要的渲染。 作者在放出代码讲述结论的时候并没有细说原理只是一笔带过,所以笔者自己想着从R ......
源码 流程 React

如何用 30s 给面试官讲清楚什么是 Session-Cookie 认证

引言 由于 HTTP 协议是无状态的,完成操作关闭浏览器后,客户端和服务端的连接就断开了,所以我们必须要有一种机制来保证客户端和服务端之间会话的连续性,也称为认证,最常见的应用场景就是保持用户的登录态。 最基本的认证方式,就是使用 Sesson-Cookie。 30s 图解 Sesson-Cooki ......
Session-Cookie Session Cookie 30s 30

toastr.js 便捷弹框怎么用?怎么本地化?

〇、简介 toastr.js 是一个非常简洁的弹窗消息插件,主要原因就是其脚本和样式文件较小。 并且可以根据自己的需求,修改样式文件,可以应用在多种不同的场景。 https://codeseven.github.io/toastr/ https://github.com/CodeSeven/toas ......
toastr js

笑死,面试官又问我SpringBoot自动配置原理

面试官:好久没见,甚是想念。今天来聊聊SpringBoot的自动配置吧? 候选者:嗯,SpringBoot的自动配置我觉得是SpringBoot很重要的“特性”了。众所周知,SpringBoot有着“约定大于配置”的理念,这一理念一定程度上可以用“SpringBoot自动配置”来解释。 候选者:Sp ......
SpringBoot 原理

应届毕业生程序员在面试时如何做好自我介绍?

在本文的开篇,本人想说句正确的废话,应届生程序员要过面试,不能单靠自我介绍,也不能单靠背题,事实上应届生准备面试得综合地从简历、项目、技术和背面试题方面做准备。 由于本人是做Java方面的,所以本人就将从上述诸多方面综合讲下,应届生朋友该如何过面试,其中的操作要点有两个,一是要在简历和面试中,向面试 ......
程序员 毕业生 程序