慕课:笔记

课程链接:直面JavaScript中的30个疑难杂症_JavaScript面试题-慕课网

第二章:数据类型

数据类型是每门编程语言的必修之课,你是否对JavaScript的数据类型和检测存在困惑,本章节将为你揭晓其中的奥秘,让你对数据类型有更深的理解。

typeof和instanceof的区别

目录

第二章:数据类型

typeof和instanceof的区别

少null

多function

堆 栈

如何快熟实现深浅拷贝

开发中常用的数据类型转换

第三章:表达式运算符和分支结构

3-1 运算符多的情况下需要注意哪些

运算符优先级

js舍人误差

3-2 开发中优化for循环

第四章:内置对象

4-1 js中常见的内置对象有哪些

4-2 面试常见装箱和拆箱的理解

4-3 带你深入理解栈和队列

什么使栈和队列?

push\pop\shift\unshift

4-4 你不知道的sort排序

sort是如何排序的?

如何解决sort排序的问题?

4-5 Date对象中getMonth()需要注意的

4-6 开发中编码和解码使用场景有哪些

第5章:JS DOM

第6章 JS BOM

6-1 开发中使用history和location需要注意哪些

第7章 函数对象(重难点)

7-1 常见函数的四种类型有哪些

函数的四种类型:匿名函数、回调函数、递归函数、构造函数

7-2 一定要知道的变量和函数提升

7-3 带你深入理解作用域和作用域链

7-4 带你图解执行环境

7-5 开发中重载和多态的使用场景有哪些

7-6 高频面试题闭包理解

7-8 new的执行过程有哪几步

7-9 开发中使用this的坑有哪些

第8章 面向对象(重难点)

8-1 面试高频如何理解面向对象

8-2 带你图解原型和原型链(1)

8-3 带你图解原型和原型链(2)

8-4 开发中如何使用继承

8-5 开发中如何运用 Object.defineProperty()方法

第9章 课程总结


口诀:typeof少null多function

少null

                机器码检测后三位

                null的机器码 000...000=》object
                typeof([]) //object 数组引用数据类型

多function

                typeof 检测引用数据类型返回object、function

                object定义一个内部方法[[call]],typeof检测object有没有内部方法,

                                有   返回function

                                无   返回object

instanceof检测返回布尔值

A instanceof B :A是由B实例化后的对象

推荐检测数据类型:object.prototype.toString.call('1') //string

Object.prototype.toString.call(obj)精确判断对象的类型_wayne丶的博客-CSDN博客

堆 栈

主要区别:堆在栈里面存的是一个地址;栈存的是一个原始类型的数值。

如何快熟实现深浅拷贝

1.遍历赋值 \\浅拷贝

2.object.create() \\浅拷贝

3.JSON.parse[JSON.stringify(obj)] //object->string->object

JSON.parse和JSON.stringify的用法

function deepClone(startObj, endObj) {
            var obj = endObj || {}
            for (var i in startObj) {
                if (typeof startObj[i] === "object") {
                    //[] {}
                    obj[i] = startObj[i].constructor === Array ? [] : Object.create(null)
                    deepClone(startObj[i], obj[i])
                } else {
                    obj[i] = startObj[i]
                }
            }
            return obj
        }

开发中常用的数据类型转换

1.特殊类型的隐士转换 NaN、0、undefined、null =>false ;不是这5种转换true

2.&&和||

3.==和===

第三章:表达式运算符和分支结构

3-1 运算符多的情况下需要注意哪些

本章节的内容较为简单,探讨开发中摄入误差的解决方案以及对于for循环的优化。

运算符优先级

算术操作符 → (关系运算符)比较操作符 → 逻辑操作符 → "="赋值符号

(+,-,,/,++,–,%) (<,>,,=,<=,>=,!=) (&&,||,!) (=,+=,-=,…)

js舍人误差

// console.log(0.1+0.2);
// 转换为二进制相加后得到的数值再转为十进制(有误差)

// 方案一:
console.log(parseFloat((0.1+0.2).toFixes(2))//0.3
//方法二:
function add(num1,num2){
  m=Math.pow(10,2)
  return (num1*m+num2*m)
}
console.log(add(0.1,0.2))

3-2 开发中优化for循环

// 正常for循环
var len=arr.length
for(var i=0;i<arr.length;i++){
  // do something
}

// 优化后for循环
for(var i=0,len=arr.length;i<len;i++){
  // do something
}

第四章:内置对象

4-1 js中常见的内置对象有哪些

JavaScript的对象--内置对象_chnnds的博客-CSDN博客_什么是内置对象

三种包装对象,直接是无法使用的,通过构造函数内有包装方法,包装后输出,输出前将方法进行清空

Arry是构造函数,Math是全局内置对象

4-2 面试常见装箱和拆箱的理解

课程要点:明白装箱原理,上一节课内容

4-3 带你深入理解栈和队列

什么使栈和队列?

push\pop\shift\unshift

4-4 你不知道的sort排序

sort是如何排序的?

如何解决sort排序的问题?

4-5 Date对象中getMonth()需要注意的

4-6 开发中编码和解码使用场景有哪些

JavaScript中有很多内置对象,我们会讲述其中一些比较令人困惑的知识点,例如包装类型对象的装箱拆箱,为什么sort排序有问题,什么是堆栈等等

第5章:JS DOM

DOM操作是前端必学之路,当我们掌握DOM之后才能操作我们的页面,整个一个DOM页面是如何被绘制到浏览器上的,我们需要理解其中的DOM事件,事件的触发、冒泡等功能。

事件绑定相当于附地址

5-3

5-4

第6章 JS BOM

BOM中的location和historyAPI用法很简单,但是也是我们工作经常会使用的,所以彻底掌握才能在开发中游刃有余。

6-1 开发中使用history和location需要注意哪些

window.history属性指向History对象,表示当前的浏览历史
        以入栈的形式压入
        History.back()
        History.forward()
        History.go(-1) 0 -2
        History.pushState(),History.replaceState()


        Location对象window.location和document.location属性,可以拿到这个对象。
        Location.href:整个URL。
        Location.protocol:当前uRL 的协议,包括冒号( :)。
        Location.host:主机。如果端口不是协议默认的80和433,则还会包括冒号(:)和端口。
        Location.hostname:主机名,不包括端口。
        Location.port:端口号。
        Location.pathname: URL的路径部分,从根路径/开始。
        Location.search:查询字符串部分,从问号?开始。
        Location.hash:片段字符串部分,从#开始。
        Location.username:域名前面的用户名。
        Location.password:域名前面的密码。
        Location.origin: URL的协议、主机名和端口。

第7章 函数对象(重难点)

7-1 常见函数的四种类型有哪些

这一章是一个重难点,能为我们带来面试中常见的闭包,以及应用;对浏览器如何执行JS的执行环境,助你理解new、this等关键字。

函数的四种类型:匿名函数、回调函数、递归函数、构造函数

匿名函数:定义时侯没有任何变量引用的函数

复习时:function(){}()匿名函数自调用

7.13

回调函数:一个函数作为对象交给其他函数使用

eg:sort传入的函数叫回调函数

下图解说:返回回来的数据通过回调函数器执行如success

递归函数:循环调用函数本身

构造函数:习惯上首字母大写,调用

7-2 一定要知道的变量和函数提升

重点掌握:Js解释执行、变量和函数提升

7-3 带你深入理解作用域和作用域链

重点:全局作用域,函数作用域;作用域链;

7-4 带你图解执行环境

7-5 开发中重载和多态的使用场景有哪些

7-6 高频面试题闭包理解

7-7 开发中call、apply、bind的使用场景区分

7-8 new的执行过程有哪几步

7-9 开发中使用this的坑有哪些

第8章 面向对象(重难点)

面试中你肯定会遇到原型和原型链,什么是面向对象;这一章将带你画图彻底理解什么是原型,以及Function和Object到底是什么关系。我们再实际应用中如何是使用这些知识。

8-1 面试高频如何理解面向对象

封装:常用的方法,定义一个run:function(){},写在function里面

多态-重载:传入的形式不同,展现的状态不同(计算的方式不同)

多态-重写:子类继承父类的方法。但感觉run方法不太好。自己写一个覆盖掉run

8-2 带你图解原型和原型链(1)

JS中几乎所有都是对象,对象最终会指向null

8-3 带你图解原型和原型链(2)

8-4 开发中如何使用继承

8-5 开发中如何运用 Object.defineProperty()方法

第9章 课程总结

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Tableau案例】神奇宝贝属性及实力强弱|数据可视化

提前声明&#xff1a;神奇宝贝的数据分析仅供参考&#xff0c;不涉及对于神奇宝贝的各种评价&#xff0c;另外我是初学tableau&#xff0c;涉及到使用的tableau操作可能很简单&#xff0c;复杂的还掌握不熟练&#xff0c;之后会拿时间系统学习tabelau。 数据预处理 该数据集有…

CODESYS模拟量超限报警功能块

博途PLC模拟量超限报警功能块详细介绍请参看下面文章链接: PLC模拟量超限报警功能块_RXXW_Dor的博客-CSDN博客模拟量偏差报警功能块请参看下面文章:模拟量偏差报警功能块(SCL代码)_RXXW_Dor的博客-CSDN博客工业模拟量采集的相关基础知识,可以查看专栏的系列文章,这里不再赘…

OSPF故障定位没思路?照这篇抄就行

我的网工朋友大家好。 好久没聊OSPF技术了&#xff0c;相关基础且经典的内容&#xff0c;公众号陆陆续续分享过一些&#xff0c;趣味科普&#xff0c;面试考题&#xff0c;实验操作&#xff0c;都有涉及。 按照惯例&#xff0c;先给你整一波优质的往期内容&#xff1a; 《 5个…

Spring Boot之静态资源映射 | 超级详细,建议收藏

写在前面&#x1f525; 上几期&#xff0c;我们重点讲解了Spring Boot集成Swagger-UI实现在线API文档及美化UI界面&#xff0c;而这期&#xff0c;在 Web 应用中会都会涉及到大量的静态资源&#xff0c;例如 图片、JS、CSS 和 HTML 等。我们知道&#xff0c;Spring MVC 导入静态…

WebGIS 信息系统-主界面基本模块功能设计

文章目录 系统文件夹结构主界面地图基本管理模块功能设计手机定位模块功能设计经纬度路径生成功能设计导航模块功能设计用户管理模块功能设计 系统文件夹结构 为了使项目容易管理和维护&#xff0c;在开发之前需要确定项目的系统文件夹结构&#xff0c;即系统文件夹结构设计。…

C++ / QT 旅游产品管理系统

一、项目介绍 旅游产品管理系统 你是一家旅行社的 IT 主管&#xff0c;现在需要你设计并实现一个旅游产品管理系统。 1 &#xff09; 基本功能要求 * 实现基础界面&#xff1a; 参照现有的旅游产品管理系统&#xff1a;查看产品、选择产品、使用说明等内容 * 支持旅游产品…

用Python搭建监控平台详解

概要 监控和运维&#xff0c;是互联网工业链上非常重要的一环。监控的目的就是防患于未然。通过监控&#xff0c;我们能够及时了解到企业网络的运行状态。一旦出现安全隐患&#xff0c;你就可以及时预警&#xff0c;或者是以其他方式通知运维人员&#xff0c;让运维监控人员有时…

Springboot 核心注解和基本配置解读

目录 1. Springboot 入门与原理 1.1 Springboot 简介 1.1.1 什么是Springboot 1.1.2 Springboot 主要优点 1.2 Springboot 相关注解 1.2.1 元注解 1.2.1.1 Target 1.2.1.2 Retention 1.2.2 Configuration 1.2.3 Import 1.2.3.1 直接注入 1.2.3.2 实现 ImportSelector…

Error: Cannot find module ‘webpack‘ 问题解决办法

这句话的意思是&#xff1a;没有找到webpack模块。 就算之前你装了webpack&#xff0c;那肯定是非全局安装 所以要全局安装 npm install --save-dev webpack 问题解决

4.蜂鸣器

1.了解蜂鸣器&#xff1a; 蜂鸣器在使用3.3V无法驱动&#xff0c;需要借助到三极管的放大特性(IcβIb)将蜂鸣器驱动&#xff1b;本次原理图中&#xff0c;接R33电阻是因为当STM32单片机复位时处于浮空状态&#xff0c;防止小电流让蜂鸣器响而添加的。 2.蜂鸣器原理图&#xf…

剖析Linux文件系统

Linux 文件系统体系结构是一个对复杂系统进行抽象化的有趣例子。通过使用一组通用的 API 函数&#xff0c;Linux 可以在许多种存储设备上支持许多种文件系统。例如&#xff0c;read 函数调用可以从指定的文件描述符读取一定数量的字节。read 函数不了解文件系统的类型&#xff…

Java——《面试题——Redis篇》

前文 java——《面试题——基础篇》 Java——《面试题——JVM篇》 Java——《面试题——多线程&并发篇》 Java——《面试题——Spring篇》 Java——《面试题——SpringBoot篇》 Java——《面试题——MySQL篇》​​​​​​ Java——《面试题——SpringCloud》 Java…

使用Nginx的反向代理来访问服务器例子——Nginx笔记

因为网站上的视频加载过慢&#xff0c;想使用nginx服务器实现HLS视频播放服务。顺便记录一下通过Nginx的方向代理来访问服务器。这里在原先的项目上进行改造。原先的项目已经部署在公网&#xff0c;使用tomcat服务器&#xff0c;可以直接用地址进行访问。 1.这里使用的8080端口…

阿里飞猪三面

&#xff08;有许多人是用青春的幸福作成功的代价的。——莫扎特&#xff09; 背景 该岗位是阿里飞猪的前端部门&#xff0c;岗位名称是node.js高级/专家开发工程师。主要负责用NodeJs作为后端技术&#xff0c;向上层Java&#xff0c;Node等业务服务&#xff0c;提供中间层基础…

ChatGPT对未来编程语言发展的影响与展望

目录 一、引言1.ChatGPT的介绍与背景介绍背景 2.编程语言发展的重要性和挑战重要性挑战 二、ChatGPT在编程领域的应用1.自然语言处理技术在编程中的应用现状2. ChatGPT作为编程辅助工具的潜力与优势 三、ChatGPT对编程语言发展的影响1. 创新编程模式的涌现2. 语言设计与交互方式…

【问题记录】如何使用 pip 在 linux 上安装 pytorch

一、进入 pytorch 官网 pytorch 官网&#xff1a;https://pytorch.org/ 二、在页面选择环境 三、复制官网弹出的命令并运行即可 pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

Redis中的缓存雪崩、击穿、穿透的原因以及解决办法

缓存雪崩、击穿、穿透一旦发生&#xff0c;会导致大量的请求积压到数据库层。如果请求的并发量很大&#xff0c;就会导致数据库宕机或是故障&#xff0c;这就是很严重的生产事故了。 俗话说&#xff0c;知己知彼&#xff0c;百战不殆。了解了问题的成因&#xff0c;我们就能够…

微服务_Nacos

简介 Nacos&#xff08;全称为“动态服务发现、配置和服务管理平台”&#xff09;是阿里巴巴开源的一款云原生服务发现和配置管理平台&#xff0c;支持多种语言。它提供了服务发现、配置管理、服务治理和流量管理等功能&#xff0c;使得微服务系统的构建和管理更加便捷。Nacos…

云HIS是什么?HIS系统为什么要上云?云HIS有哪些优点?

一、当前医疗行业HIS的现状与发展趋势 1.医院信息系统&#xff08;HIS&#xff09;经历了从手工到单机再到局域网的两个阶段&#xff0c;随着云计算、大数据新技术迅猛发展&#xff0c;基于云计算的医院信息系统将逐步取代传统局域网HIS , 以适应人们对医疗卫生服务越来越高的要…

关于EMC Unity 存储系统DIMM内存的几个问题

下面是客户咨询最多的几个关于EMC Unity的DIMM内存的问题&#xff0c;供大家参考。 1. Unity存储能否自己扩容内存 有客户觉得Unity存储的内容太小&#xff0c;想自己扩容内存&#xff0c;很朴实的想法&#xff0c;原来是每个控制器3条16gb&#xff0c;能不能升级到3条32gb或…