js笔记
文章平均质量分 56
笔记整理自阮一峰老师的JavaScript教程
地址:https://wangdoc.com/javascript/
ease_07
偏爱一切色彩丰富的事物
展开
-
节流防抖核心代码
/ 记录当前想要执行的时间 若当前与上次触发的差值原创 2024-03-04 18:20:50 · 355 阅读 · 0 评论 -
定时器
定时器向任务队列添加定时任务setTimeout()setTimeout()返回一个整数,表示定时器的编号var timerId = setTimeout(func|code,delay);第2个参数如果省略,默认为0setTimeout()多个参数? 将依次作为推迟执行的函数参数setTimeout(function(a,b){ console.log(a+b); //3}...原创 2019-11-20 08:56:18 · 93 阅读 · 0 评论 -
错误处理机制
错误处理机制1.Error实例对象js解析或运行时,抛出的错误是构造函数的实例> var err = new Error('出错了');undefined> err.message;'出错了'Error对象属性message:错误提示信息,必须项name:错误名称stack:错误发生时的堆栈function throwit(){ throw new Er...原创 2019-11-14 10:13:45 · 186 阅读 · 0 评论 -
数据类型
数据类型数据类型:7种number string boolean undefined null object symbolobject分为array object function判断一个值的类型typeofinstanceofObject.prototype.toString> typeof 123'number'> typeof '123''st...原创 2019-11-13 20:49:16 · 144 阅读 · 0 评论 -
this call apply bind
this提前声明const {log} = console1.this是属性或方法当前所在的对象var A = { name:"张三", describe:function(){ return '姓名:'+this.name; }};var B = {name:'李四'};B.describe = A.describe;log(B.describe()); //姓名:李四...原创 2019-11-12 22:45:18 · 89 阅读 · 0 评论 -
实例对象与new命令
实例对象与new命令运行环境:node.js1.构造函数var Vehicle = function(){ this.price = 1000;};构造函数特点:内部this关键字生成对象时new关键字2.new命令作用:执行构造函数,返回一个实例对象const {log} = console;var Vehicle = function(){ this.pr...原创 2019-11-12 10:56:39 · 405 阅读 · 0 评论 -
如何理解原型与原型链?
构造函数,原型和实例的关系:每个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的constructor属性,而实例都包含一个指向原型对象的[[prototype]]属性。原型链:让原型对象等于另一个构造函数的实例,则此原型对象获得[[prototype]]指向另一个构造函数。再让另一个原型对象等于这个原型对象的实例,依次类推,从而形成原型链。完整的原型链:...原创 2019-09-17 07:14:26 · 423 阅读 · 0 评论 -
跨浏览器绑定及解绑事件
<button id="btn">跨浏览器绑定及解绑事件</button><script type="text/javascript"> var eventUtil = { //绑定事件 addHandler:function(element,type,handler){ if(element.addEventListener){ //...原创 2019-09-25 16:26:47 · 143 阅读 · 0 评论 -
click+ctrl/shift/alt/meta,跨浏览器添加事件+访问Event对象
var eventUtil = { //绑定事件 addHandler:function(element,type,handler){ if(element.addEventListener){ //chrome,firefox,safari,opera,IE9+ element.addEventListener(type,handler); }else if(elemen...原创 2019-09-25 23:18:32 · 177 阅读 · 0 评论 -
JavaScript高级程序设计(第三版)_第7章笔记
JavaScript高级程序设计(第三版)第7章 函数表达式代码环境 jsshell//定义函数的方式有两种//1.函数声明function functionName(arg0,arg1,arg2){ //statement;}print("6:",functionName.name);//函数声明提升:在执行代码之前先读取函数声明sayHi();function sayHi...原创 2019-09-27 22:33:16 · 163 阅读 · 0 评论 -
call & apply的区别
call & apply的区别//总结,apply和call都用来更改this执行环境//括号内调用括号外的环境//1.call逐个传值//2.apply以数组传值function add(a,b){ console.log(a+b);}function sub(a,b){ console.log(a-b);}add.call(sub,5,3); //8,sub调...原创 2019-10-01 15:15:22 · 73 阅读 · 0 评论 -
面向对象程序设计_总结篇_第6章笔记
JavaScript 面向对象程序设计属性类型有两种:attribute && property数据属性:特性值有Configurable Enumerable Writable Value访问器属性:特性值Configurable Enumerable Get Set修改属性 特性方式:Object.defineProperty(object, propert...原创 2019-09-16 22:07:19 · 263 阅读 · 0 评论 -
JavaScript高级程序设计_第6章笔记
JavaScript高级程序设计(第三版)第6章 面向对象程序设计这一章笔记比较特别,边看书边敲的代码,也直接敲出了笔记。看了两遍书。继承方式和C++还是不太一样。核心就在于 构造函数,原型和实例的关系:每个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实例都包含一个指向原型对象的内部指针<!DOCTYPE html><htm...原创 2019-09-16 13:51:10 · 184 阅读 · 0 评论 -
JavaScript高级程序设计(第三版)_5.2笔记
JavaScript高级程序设计(第三版)5.2 Array类型 与其他语言相比,都是数据的有序列表。但是ES数组中的每一项可以保存任何类型的数据。大小可以动态调整(随数据增加自动增长以容纳新增数据)创建数组的两种方法:Array()构造函数var colors = new Array();var colors = new Array(20); //可传递数组长度var c...原创 2019-09-06 09:24:59 · 111 阅读 · 0 评论 -
JavaScript高级程序设计(第三版)_5.3笔记
JavaScript高级程序设计(第三版)5.3 Date类型UTC(Coordinated Universal Time)国际协调时间精确到1970年1月1日之前或之后的285 616年创建日期对象使用new操作符和Date()构造函数var now = new Date();无参数,新建对象自动获得当前日期及时间 Date.parse():接收表示日期的字符串参数,根据字符串...原创 2019-09-06 12:27:11 · 133 阅读 · 0 评论 -
JavaScript高级程序设计(第三版)_第1&2章笔记
JavaScript高级程序设计(第三版)第一章 JavaScript实现JavaScript组成部分:专为网页设计而涉及的脚本语言核心(ECMA Script)文档对象模型(DOM)浏览器对象模型(BOM)ECMAScript宿主环境:提供基本ECMA Script实现,同时提供该语言扩展,以便语言与环境之间对接交互。ECMA-262标准规定ECMAScript以下组成部分...原创 2019-08-25 16:30:27 · 177 阅读 · 1 评论 -
JavaScript高级程序设计(第三版)_第3章笔记
JavaScript高级程序设计(第三版)第三章 基本概念ECMA-262叫做ECMAScript的伪语言,此书按照ES3就ES5变化给出说明。语法区分大小写:ES中的一切都区分大小写。标识符:指变量、函数、属性的名字或函数的参数。格式规则如下:第一个字符不能是数字,其余部分是字母、下划线、美元符号或数字不能使用关键字区分大小写不能使用算数运算符命名规范:有意义...原创 2019-08-26 23:59:15 · 234 阅读 · 0 评论 -
JavaScript高级程序设计(第三版)_第4章笔记
JavaScript高级程序设计(第三版)第四章 变量、作用域和内存问题基本类型和引用类型的值JS变量本质:松散类型,决定了其只是在特定时间用于保存特定值的名字而已。ES变量可能包含两种不同数据类型的值:基本类型值:指简单的数据段引用类型值:指可能由多个值构成的对象,保存在内存中。JS中不允许直接访问内存中的位置,即不能直接操作对象的内存空间。操作对象时,实际上是在操作对象的引用...原创 2019-09-05 07:01:36 · 123 阅读 · 0 评论 -
JavaScript高级程序设计_5.4笔记
JavaScript高级程序设计(第三版)5.4 RegExp类型ES中通过RegExp类型支持正则表达式var expression = / pattern / flags ;pattern可以是任何正则表达式 ,包含字符类,限定符,分组,向前查找及反向引用。每个正则表达式可带有一或多个标志(flags),以标明正则表达式的行为。匹配模式支持以下三个标志:g:表示全局模式,即...原创 2019-09-07 08:05:20 · 93 阅读 · 0 评论 -
JavaScript高级程序设计_5.5笔记
JavaScript高级程序设计(第三版)5.5 Function类型 ES中,**函数实际上是对象。每个函数都是Function类型的实例。**与其他引用类型一样具有属性和方法。函数名实际上是一个指向函数对象的指针,不会与某个函数绑定。//通常使用函数声明语法定义:function sum(num1, num2){ return num1 + num2;}//使用函数表...原创 2019-09-07 11:37:42 · 89 阅读 · 0 评论 -
JavaScript高级程序设计_5.6笔记
JavaScript高级程序设计(第三版)5.6 基本包装类型Boolean,Number,String引用类型与基本包装类型的区别在于对象的生存期 :使用new操作符创建的引用类型实例在执行流离开作用域之前都一直保存在内存中。自动创建的基本包装类型的对象,则只存在于一行代码的执行瞬间,然后立即被销毁。(运行时不能为基本类型值添加属性和方法)var s1 = "some text";...原创 2019-09-07 18:50:22 · 81 阅读 · 0 评论 -
JavaScript高级程序设计_5.7笔记
JavaScript高级程序设计(第三版)5.7 单体内置对象 ECMA-262对内置对象的定义:由ES实现提供的,不依赖宿主环境的对象,这些对象在ES程序执行之前已经存在。Object,Array,String5.7.1 Global对象不属于任何其他对象的属性和方法最终都是他的属性和方法。事实上,没有全局变量或全局函数,所有在全局作用域中定义的属性和函数,都是Global对象的...原创 2019-09-07 22:08:53 · 109 阅读 · 0 评论 -
JavaScript高级程序设计_第五章总结笔记
JavaScript高级程序设计(第三版)第五章 小结对象在JS中被称为引用类型的值Object是一个基础类型,其他所有类型从Object继承了基本的行为Array类型是一组值的有序列表,同时提供操作和转换这些值的功能Date类型提供有关日期和时间的信息,包含当前日期和时间以及相关的计算功能RegExp类型是ES支持正则表达式的一个接口,提供最基本的和一些高级的正则表达式功能函数...原创 2019-09-07 22:10:22 · 167 阅读 · 0 评论 -
html结合js制作动态进度条
效果展示<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>动态进度条</title></head><body> <label id="number" for="prog"></label> &l...原创 2019-09-07 22:50:49 · 1397 阅读 · 0 评论 -
JavaScript高级程序设计(第三版)_5.1笔记
JavaScript高级程序设计(第三版)第5章 引用类型 引用类型的值(对象)是引用类型的一个实例。 ES中,引用类型是一种数据结构,用于将数据和功能组织在一起。常被称为类。 ES从技术上讲是一门面向对象的语言,但它不具备传统的面向对象语言所支持的类和接口等基本结构。 引用类型有时也被称为对象定义,因其描述了一类对象具有的属性和方法。5.1 Object类型 大多数引用...原创 2019-09-06 09:22:05 · 89 阅读 · 0 评论