- 博客(8)
- 收藏
- 关注
原创 JavaScript基础 - 数组去重的11种方法
文章目录1. Set2. Map3. for + splice4. for + indexOf5. for + includes6. for + sort7. filter + hasOwnProperty8. filter + indexOf9. reduce + includes10. lodash 工具库11. 对比数组对象去重1. reduce2. Map3. Map + Object.values()4. 双重循环5. 冒泡排序法以下例子皆以该数组为基础var arr = [ 1, 1,
2020-12-04 10:26:47
277
原创 JavaScript基础 - JS遍历数组的12种方法
文章目录1. for2. foreach3. map4. for-of5. filter6. every7. some8. reduce9. reduceRight10. find11. findIndex12. keys、values、entries13. 比较jsperf手动检测以下例子皆以该数组为基础const arr = [1, 2, 3]1. for普通版for(let i = 0; i < arr.length;i++ ){ //代码}优化版// 使用临时变
2020-12-04 10:25:44
280
原创 JavaScript基础—深入了解作用域与作用域链
文章目录前言前置知识执行环境全局执行环境函数执行环境作用域1.全局作用域2.局部作用域3. 作用域优先级4. 同名变量5.ES5模拟块级作用域块级作用域1. 借助立即执行函数2. 定义函数并传值3. 使用setTimeout的第三个参数4. 使用 let、const 声明变量作用域链前言万丈高楼平地起,学习基础很重要。前置知识执行环境执行环境(execution context)是 JavaScript 中最为重要的一个概念。执行环境定义了变量或函数有权访问的其他数据,决定了它们各自的行为。每个执
2020-12-01 19:58:01
213
原创 JavaScript—let和var的区别(良心总结!!)
文章目录前言1. 变量的挂载不同2.有无变量提升3.能否重复声明4.是否有块级作用域5. 暂时性死区6.const声明注意事项暂时性死区typeof不再安全隐蔽型死区总结前言由于ES6的出现,变量声明不再单调,除了可以用var外,还可以使用let和const。ES5: varES6: let、const下面来了解下它们声明的变量有哪些区别。1. 变量的挂载不同var 声明的变量会挂载在 window 上,而 let 和 const 声明的变量不会let 、const 声明的变量会
2020-12-01 19:56:06
419
原创 前端面试必考—JavaScript变量提升和函数提升详解
这里写自定义目录标题前言前置知识变量提升(Hoisting)例子1例子2例子3例子4例子5函数提升例子1:函数声明可被提升例子2:函数表达式不可被提升例子3优先级例子1例子2例子3:结合自执行函数前言变量是前端日常中使用的最频繁的语法。在开发过程,虽然知道怎么用,但是却不知道为什么,比如变量提升。变量提升和函数提升在前端面试中经常会考察到,下面介绍它们是如何形成的以及有什么区别。前置知识在了解变量提升前,需要先了解一下js的执行过程,js执行分为两个过程:词法分析阶段:词法分析主要包括:分
2020-12-01 19:49:21
273
原创 中高级前端必备技能—对象的”属性类型“应用场景总结
文章目录前言1.不想被遍历的属性默认不能被遍历的内部属性定义一个不想被遍历的属性2. 不想被修改的属性不许动我的属性我不动你的属性3. 动态的属性值`=`赋值同时也可以影响其他属性举个栗子4. 高级方法1. 创建一个对象常量2. 禁止拓展3. 密封4. 冻结前言初级前端开发工程师一般很少会关注对象的属性类型,因为简单的任务几乎不需要使用到,但是随着业务的复杂度提高或者需要自己造轮子的时候,了解对象的属性类型很有必要。下面列举几种使用场景:1.不想被遍历的属性大多数的情况,在循环遍历的时候,我们
2020-12-01 14:28:54
349
原创 JavaScript—八种数据类型最全总结(检测与转换)
数据类型数据类型检测typeof可检测基本数据类型和function,无法检测引用数据类型var arr = [ null, // object undefined, // undefined true, // boolean 12, // number 'haha', // string Symbol(), // symbol 20n, // bigint function(){
2020-12-01 12:16:08
385
原创 JavaScript历史—ECMAScript和JavaScript的关系
JavaScript 是一种高级的、解释型的编程语言。JavaScript是一门基于原型、函数先行的语言,是一门多范式的语言,它支持面向对象编程,命令式编程,以及函数式编程。它已经由ECMA(欧洲电脑制造商协会)通过ECMAScript实现语言的标准化。JavaScript 在 1995 年由 Netscape 公司的 Brendan Eich,在网景导航者浏览器上首次设计实现而成。JavaScript和ECMAScript的关系JavaScript是脚本语言,ECMAScript是规范。JavaSc
2020-12-01 12:05:32
566
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅