XOR
131.Set和WeakSet结构
#### 131. Set 和 WeakSet 结构? - 1.ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。 - 2.WeakSet 结构与 Set 类似,也是不重复的值的集合。但是 WeakSet 的成员只能是对象,而不能是其他类型的值。WeakSet ......
10.JavaScript原型,原型链有什么特点
#### 10. JavaScript 原型,原型链? 有什么特点? ``` 在 js 中我们是使用构造函数来新建一个对象的,每一个构造函数的内部都有一个 prototype 属性值,这个属性值是一个对 象,这个对象包含了可以由该构造函数的所有实例共享的属性和方法。当我们使用构造函数新建一个对象后, ......
99.为什么0.10.20.3如何解决这个问题
#### 99. 为什么 0.1 + 0.2 != 0.3?如何解决这个问题? ``` 当计算机计算 0.1+0.2 的时候,实际上计算的是这两个数字在计算机里所存储的二进制,0.1 和 0.2 在转换为二进制表示的时候会出现位数无限循环的情况。js 中是以 64 位双精度格式来存储数字的,只有 5 ......
88.检测浏览器版本版本有哪些方式
#### 88. 检测浏览器版本版本有哪些方式? ``` 检测浏览器版本一共有两种方式: 一种是检测 window.navigator.userAgent 的值,但这种方式很不可靠,因为 userAgent 可以被改写,并且早期的浏览器如 ie,会通过伪装自己的 userAgent 的值为 Mozi ......
107.SQL注入攻击
#### 107. SQL 注入攻击? ``` SQL 注入攻击指的是攻击者在 HTTP 请求中注入恶意的 SQL 代码,服务器使用参数构建数据库 SQL 命令时,恶意 SQL 被一起构 造,破坏原有 SQL 结构,并在数据库中执行,达到编写程序时意料之外结果的攻击行为。 ``` 详细资料可以参考: ......
7.null和undefined的区别
#### 7. null 和 undefined 的区别? ``` 首先 Undefined 和 Null 都是基本数据类型,这两个基本数据类型分别都只有一个值,就是 undefined 和 null。 undefined 代表的含义是未定义,null 代表的含义是空对象。一般变量声明了但还没有定义 ......
m基于FPGA的桶形移位寄存器verilog实现,包含testbench
1.算法仿真效果 本系统进行了两个平台的开发,分别是: Vivado2019.2 Quartusii18.0+ModelSim-Altera 6.6d Starter Edition 其中Vivado2019.2仿真结果如下: Quartusii18.0+ModelSim-Altera 6.6d S ......
36进制加法Java语言
#三十六进制加法 ###题目 给两个字符串num1,num2,实现36进制的数字相加。 10进制加法,逢十进一,每个位数数字可以为0-9,最小为0,最大为9,共10种情况 36进制加法,逢36进一,每个位数数字可以为0-35,最小为0,最大为35,共36种情况,这36种情况为0-9 10种 a-z ......
Linux 发行版 Gentoo 存在重大漏洞
网络安全公司 SonarSource 在日前研究中发现,Gentoo Linux 发行版中存在漏洞 CVE-2023-28424,黑客可以利用该漏洞进行 SQL 注入攻击。 研究人员从 GentooLinux 的 Soko 搜索组件中找到了这个漏洞。该漏洞的 CVSS 风险评分为 9.1,属于特别重 ......
Linux 发行版 Gentoo 存在重大漏洞
网络安全公司 SonarSource 在日前研究中发现,Gentoo Linux 发行版中存在漏洞 CVE-2023-28424,黑客可以利用该漏洞进行 SQL 注入攻击。 研究人员从 GentooLinux 的 Soko 搜索组件中找到了这个漏洞。该漏洞的 CVSS 风险评分为 9.1,属于特别重 ......
Linux 发行版 Gentoo 存在重大漏洞
网络安全公司 SonarSource 在日前研究中发现,Gentoo Linux 发行版中存在漏洞 CVE-2023-28424,黑客可以利用该漏洞进行 SQL 注入攻击。 研究人员从 GentooLinux 的 Soko 搜索组件中找到了这个漏洞。该漏洞的 CVSS 风险评分为 9.1,属于特别重 ......
153.vue中key值的作用
#### 153. vue 中 key 值的作用? ``` vue 中 key 值的作用可以分为两种情况来考虑。 第一种情况是 v-if 中使用 key。由于 Vue 会尽可能高效地渲染元素,通常会复用已有元素而不是从头开始渲染。因此当我们使用 v-if 来实现元素切换的时候,如果切换前后含有相同类 ......
154.computed和watch区别
#### 154. computed 和 watch 区别? ``` computed 是计算属性,依赖其他属性计算值,并且 computed 的值有缓存,只有当计算值变化才会返回内容。 watch 监听到值的变化就会执行回调,在回调中可以进行一些逻辑操作。 ``` ......
83.如何判断当前脚本运行在浏览器还是node环境中(阿里)
#### 83. 如何判断当前脚本运行在浏览器还是 node 环境中?(阿里) ``` typeof window 'undefined' ? 'node' : 'browser'; 通过判断当前环境的 window 对象类型是否为 undefined,如果是undefined,则说明当前脚本运行在 ......
39.eval是做什么的
#### 39. eval 是做什么的? ``` 它的功能是把对应的字符串解析成 JS 代码并运行。 应该避免使用 eval,不安全,非常耗性能(2次,一次解析成 js 语句,一次执行)。 ``` 详细资料可以参考: [《eval()》](https://developer.mozilla.org/ ......
26.和操作符的返回值
#### 26. || 和 && 操作符的返回值? ``` || 和 && 首先会对第一个操作数执行条件判断,如果其不是布尔值就先进行 ToBoolean 强制类型转换,然后再执行条件 判断。 对于 || 来说,如果条件判断结果为 true 就返回第一个操作数的值,如果为 false 就返回第二个操 ......
108.什么是MVVM比之MVC有什么区别什么又是MVP
#### 108. 什么是 MVVM?比之 MVC 有什么区别?什么又是 MVP ? ``` MVC、MVP 和 MVVM 是三种常见的软件架构设计模式,主要通过分离关注点的方式来组织代码结构,优化我们的开发效率。 比如说我们实验室在以前项目开发的时候,使用单页应用时,往往一个路由页面对应了一个脚本 ......
133.什么是Proxy
#### 133. 什么是 Proxy ? ``` Proxy 用于修改某些操作的默认行为,等同于在语言层面做出修改,所以属于一种“元编程”,即对编程语言进行编程。 Proxy 可以理解成,在目标对象之前架设一层“拦截”,外界对该对象的访问,都必须先通过这层拦截,因此提供了一种机制,可以对外界的访问 ......
4.内部属性[[Class]]是什么
#### 4. 内部属性 [[Class]] 是什么? 所有 typeof 返回值为 "object" 的对象(如数组)都包含一个 内部属性 [[Class]] (我们可以把它看作 一个内部的分类,而非 传统的面向对象意义上的类 )。 这个属性 无法直接访问,一般通过 Object.prototyp ......
45.[1,2,3].mapparseInt答案是多少
#### 45. ["1", "2", "3"].map(parseInt) 答案是多少? ``` parseInt() 函数能解析一个字符串,并返回一个整数,需要两个参数 (val, radix),其中 radix 表示要解析的数字的基数。(该值介于 2 ~ 36 之间,并且字符串中的数字不能大于 ......
125.js拖拽功能的实现
#### 125. js 拖拽功能的实现 相关知识点: ``` 首先是三个事件,分别是 mousedown,mousemove,mouseup 当鼠标点击按下的时候,需要一个 tag 标识此时已经按下,可以执行 mousemove 里面的具体方法。 clientX,clientY 标识的是鼠标的坐标 ......
24.操作符什么时候用于字符串的拼接
#### 24. `+` 操作符什么时候用于字符串的拼接? ``` 根据 ES5 规范 11.6.1 节,如果某个操作数是字符串或者能够通过以下步骤转换为字符串的话,+ 将进行拼接操作。如果其 中一个操作数是对象(包括数组),则首先对其调用 ToPrimitive 抽象操作,该抽象操作再调用 [[D ......
105.什么是SamesiteCookie属性
#### 105. 什么是 Samesite Cookie 属性? ``` Samesite Cookie 表示同站 cookie,避免 cookie 被第三方所利用。 将 Samesite 设为 strict ,这种称为严格模式,表示这个 cookie 在任何情况下都不可能作为第三方 cookie ......
161.手写一个jsonp
#### 161. 手写一个 jsonp ```js function jsonp(url, params, callback) { // 判断是否含有参数 let queryString = url.indexOf("?") -1 ? "?" : "&"; // 添加参数 for (var k i ......
104.什么是CSRF攻击如何防范CSRF攻击
#### 104. 什么是 CSRF 攻击?如何防范 CSRF 攻击? ``` CSRF 攻击指的是跨站请求伪造攻击,攻击者诱导用户进入一个第三方网站,然后该网站向被攻击网站发送跨站请求。如果用户在被 攻击网站中保存了登录状态,那么攻击者就可以利用这个登录状态,绕过后台的用户验证,冒充用户向服务器执 ......
146.Vue的生命周期是什么
#### 146. Vue 的生命周期是什么? ``` Vue 的生命周期指的是组件从创建到销毁的一系列的过程,被称为 Vue 的生命周期。通过提供的 Vue 在生命周期各个阶段的钩子函数,我们可以很好的在 Vue 的各个生命阶段实现一些操作。 ``` ......
110.Object.defineProperty介绍
#### 110. Object.defineProperty 介绍? ``` Object.defineProperty 函数一共有三个参数,第一个参数是需要定义属性的对象,第二个参数是需要定义的属性,第三个是该属性描述符。 一个属性的描述符有四个属性,分别是 value 属性的值,writabl ......
134.Reflect对象创建目的
#### 134. Reflect 对象创建目的? - 1.将 Object 对象的一些明显属于语言内部的方法(比如 Object.defineProperty,放到 Reflect 对象上。 - 2.修改某些 Object 方法的返回结果,让其变得更合理。 - 3.让 Object 操作都变成函数 ......
81.哪些操作会造成内存泄漏
#### 81. 哪些操作会造成内存泄漏? 相关知识点: - 1.意外的全局变量 - 2.被遗忘的计时器或回调函数 - 3.脱离 DOM 的引用 - 4.闭包 回答: ``` 第一种情况是我们由于使用未声明的变量,而意外的创建了一个全局变量,而使这个变量一直留在内存中无法被回收。 第二种情况是我们设 ......