Javascript
文章平均质量分 74
学习javascript过程中的笔记积累,重点知识点理解
Beiyux
路漫漫其修远兮,一起加油呀
展开
-
JS基础对异步的理解,什么是异步,异步的使用场景(面试必考)
关于异步这一块的内容,基本是前端的必考知识,这篇文章来讲讲基础的异步理解,从js单线程的特性理解异步的出现以及promise基础的使用方法,希望能对大家有所帮助原创 2022-04-06 22:11:28 · 2202 阅读 · 0 评论 -
搞懂JS中作用域和闭包的使用(下)(讲讲面试题)
前言上篇文章讲了作用域,闭包还有this使用的一些基础知识,不太清楚的朋友可以点下面链接查看:搞懂JS中作用域和闭包的使用(上)(基本定义)本篇文章就继续围绕这些知识点,来讲讲面试真题,帮助大家更好的去理解真题举例:this有哪些不同的运用场景,如何取值?普通函数中调用,this是windowcall,apply,bind会改变this指向,绑定谁,this就指向谁作为对象方法调用,this就是当前对象class里的this是,class实例本身箭头函数 => ,this是上一级原创 2022-04-02 08:00:00 · 346 阅读 · 0 评论 -
搞懂JS中作用域和闭包的使用(上)(基本定义)
文章目录前言作用域和自由变量闭包this的赋值情况最后前言什么是作用域?什么是闭包?这些都是前端面试中常考的问题,今天就来总结一下作用域和闭包的内容作用域和自由变量作用域:作用域可以理解为某个变量合法的使用范围 ,如下图的函数,我给他加上了一层层的红框,每层定义的变量都有它自己的使用范围作用域分为以下三种:全局作用域代码中直接写一个变量,变量没有受到约束,在全局可以使用函数作用域在函数中定义的变量,只能在函数中使用块级作用域(ES6新增)在 if(true)中定义的x变量,只能原创 2022-03-29 23:11:21 · 402 阅读 · 0 评论 -
Javascript原型和原型链透析详解—下(手写原型链,图文说明)
前言上一篇文章从class类入手写了个小案例,从而引入类型判断的方法 instanceof,带大家了解了什么是原型。这篇接着上篇去讲,给大家介绍重头戏—原型链,面试高频:如何手写原型链,对原型链的理解。没看过上集的建议点下方链接去瞅瞅,图文并茂,方便理解本文 ✿(。◕ᴗ◕。)✿Javascript原型和原型链透析详解—上原型链上集文章中我们写了一个案例。在案例中定义了父类People,子类Student继承父类,那么就有如下全等关系:People的显示原型prototype 全等 Studen原创 2022-01-12 17:52:03 · 450 阅读 · 0 评论 -
Javascript原型和原型链透析详解—上(图文说明)
关于JS原型链可谓是JS基础的重中之重,只要是前端面试,基本上就会涉及到原型链类的考题,考题千千万,主要是我们要掌握和搞懂原型链的根本逻辑,光靠背不理解是不行的,这两篇文章就来讲讲JS原型链相关的内容,通过例子和手写原型链图的方式,帮助大家更好的掌握相关知识这一篇上集主要是通过类和 instanceof 引入原型的概念能对原型的整个过程有个清晰的理解Class继承在讲原型和原型链之前,我们先来通过例子看一下class继承的内容:原创 2022-01-11 21:11:11 · 448 阅读 · 0 评论 -
Javascript中对象的知识点大总结ᕦ(・ㅂ・)ᕤ
学计算机的大多数都听过一个梗:没有对象咋办,咱们来new一个!那么这个对象到底是啥呢,在编程语言中如何去实现呢? 这篇文章我总结了在JS中对象相关的知识点,无论你是编程萌新还是老手,都能通过本文快速学习或是回顾对象的重要知识点,希望能帮助到你们~原创 2021-12-22 15:52:16 · 806 阅读 · 1 评论 -
一篇搞懂 javascript 数组中常用的属性及方法(案例说明 一看就会)
JS数组中常用属性及方法前言数组的创建数组的方法toString()join()添加新元素unshift() 方法push() 方法删除元素pop() 方法shift() 方法修改元素splice() 方法slice() 方法合并数组sort()排序遍历数组for循环遍历forEach() 方法筛选数组filter()every()some()最后前言在Javascript中数组的属性和方法非常的多,并且在实际开发中,我们会经常用到数组的一些方法来实现逻辑,所以今天这里就来总结数组的常用属性和方法。原创 2021-12-19 22:49:58 · 919 阅读 · 0 评论 -
Javascript 深拷贝的前因后果(深层理解)
关于JS深拷贝的内容,一直以来都是前端面试中的高频考点,这篇就带大家来了解JS手写深拷贝的方法关于深拷贝老样子先来看一个例题:大家应该知道最后打印的答案是 shanghai,这个过程就是叫做浅拷贝。那么下面我们要做的就是给obj2赋值之后,obj1的值不会改变,这样的过程叫做深拷贝使用深拷贝先来直接上代码,下面再给大家分析一波:function deepClone(obj = {}) { if (typeof obj !== 'object'原创 2021-11-26 20:23:04 · 375 阅读 · 0 评论 -
JS中值类型和引用类型的深层理解
文章目录前言一、什么是值类型和引用类型?二、深入分析1.值类型2.引用类型三、值类型和引用类型有哪些四、总结前言最近在复习JS的基础内容,看到了关于JS中值类型和引用类型的问题,这类问题也经常会出现在面试的问题中,结合自己的理解记录一下一、什么是值类型和引用类型?我们先来看两个例题:值类型:这个大家应该都能理解,比较直观的逻辑,打印的b结果为100引用类型:a赋值成一个对象age:20,b赋值为a,b.age赋值为21,最后打印a.age的值也为21区别: 值类型各自赋值,不会相原创 2021-11-24 10:19:36 · 669 阅读 · 0 评论 -
js小孩翻书动态实现效果
效果如图:通过点击strat和stop两个按钮,实现动画的开始停止代码如下三张图片实现动画翻书效果<!doctype html><html lang="en"><head> <meta charset="UTF-8" /> <title>Document</title></head><body> <img src="girl_1.gif" alt="" id="img" />原创 2021-08-26 17:46:16 · 847 阅读 · 0 评论 -
DOW对象,控制HTML对象
getElementsByName()方法返回带有指定名称的节点对象的集合。语法:document.getElementsByName(name)与getElementById() 方法不同的是,通过元素的 name 属性查询元素,而不是通过 id 属性。注意:因为文档中的 name 属性可能不唯一,所有 getElementsByName() 方法返回的是元素的数组,而不是一个元素。和数组类似也有length属性,可以和访问数组一样的方法来访问,从0开始。getElementsByT原创 2020-06-21 15:47:37 · 359 阅读 · 0 评论 -
js入门你必须知道的浏览器对象
JavaScript 计时器计时器类型:一次性计时器:仅在指定的延迟时间之后触发一次。间隔性触发计时器:每隔一定的时间间隔就触发一次。计时器方法:方法说明setTimeout()指定的延迟时间之后来执行代码clearTimeout()取消setTimeout()设置setInterval()e每隔指定的时间执行代码PdlearInterval()取消setinterval)设置计时器setInterval()在执行时,从载入页面后每隔指定的时间原创 2020-06-16 19:00:31 · 141 阅读 · 0 评论 -
JavaScript入门之内置对象
String 字符串对象访问字符串对象的属性length:stringObject.length; 返回该字符串的长度。var mystr="Hello World!";var myl=mystr.length;以上代码执行后,myl 的值将是:12访问字符串对象的方法:使用 String 对象的 toUpperCase() 方法来将字符串小写字母转换为大写:var mystr="Hello world!";var mynum=mystr.toUpperCase();以上代码执行后,原创 2020-06-13 20:39:27 · 106 阅读 · 0 评论 -
JavaScript基础进阶(网页交互事件)
网页交互事件主要事件表:事件说明onclick鼠标单击事件onmouseover鼠标经过事件onmouseout鼠标移开事件onchange文本框内容改变事件onselect文本框内容别选中事件onfocus光标聚集onblur光标离开onload网页导入onunload关闭网页鼠标单击事件( onclick )举例<html><head> <script type="t原创 2020-05-20 22:28:54 · 254 阅读 · 0 评论 -
JavaScript基础部分
JavaScript基础部分数组创建数组语法:var myarray=new Array();我们创建数组的同时,还可以为数组指定长度,长度可任意指定。var myarray= new Array(8); //创建数组,存储8个数据。 数组赋值第一步:创建数组var myarr=new Array(); 第二步:给数组赋值 myarr[1]=" a"; myarr[2]=" b";赋值方法var myarray = new Array(66,80,9原创 2020-05-19 22:09:29 · 134 阅读 · 0 评论