随笔分类 -  javascript

上一页 1 2 3 4 5 6 7 ··· 14 下一页
摘要:1.块作用域声明(Block Scoped Declarations) 自从该语言问世以来,JavaScript开发人员一直使用var来声明变量。不过,正如下面代码段所展示的那样,由关键字var所创建的变量,在其作用域上会出现问题。 var x = 10 if (true) { var x = 15 阅读全文
posted @ 2021-07-07 17:31 浅笑·
摘要:方式一:window.innerWidth / window.innerHeight 这种方式只支持IE9以及以上版本的浏览器 网页高度,打开F12控制台当然高度会不同 方式二:document.documentElement.clientWidth console.log(document.doc 阅读全文
posted @ 2021-07-07 17:29 浅笑·
摘要:1、delete delete是删除对象的属性没有任何剩菜,剩下的唯一真正的方法,但它的工作比其“替代”设置慢100倍 object[key] = undefined var myObject = { "ircEvent": "PRIVMSG", "method": "newURI", "regex 阅读全文
posted @ 2021-07-07 17:27 浅笑·
摘要:继承的7种方式 原型链继承构造函数继承组合继承原型式继承寄生式继承寄生组合式继承Es6 class extends 继承 原型链继承: 将父亲的实例作为孩子的原型. 优点: 父亲的方法可以被子类复用 缺点: 父类的所有属性都会被子类进行共享, 更改了一个子类的属性, 其他的子类的属性也一起变了. 子 阅读全文
posted @ 2021-06-26 12:50 浅笑·
摘要:一、Map Map可以用来存储键值对,在一定程度上扩展了Object的内容。 1. Map的基本API 创建新的Map实例 // 创建一个空映射 let map = new Map() // 传入一个包含键值对组的可迭代对象, // 传入的可迭代对象会按顺序插入到新的map实例里 let arr = 阅读全文
posted @ 2021-06-26 12:48 浅笑·
摘要:1. eval函数有什么用? 调用eval函数,可以将其参数作为JavaScript程序进行解释。换句话说,eval可以把它的参数当做代码 来执行。 例子 function f(x) { eval('var y=x'); console.log('y:', y); } f('hello');//y: 阅读全文
posted @ 2021-06-26 12:47 浅笑·
摘要:1. 回顾进程和线程的定义 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。 线程(Thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。 2. Node.js的单线程 Node特点主线程是单线程的 阅读全文
posted @ 2021-06-26 12:46 浅笑·
摘要:前言 在 JavaScript 中,我们可以有多种方式定义函数,如:函数声明、函数表达式和箭头函数 // 函数声明 function normalFn() { return 'normalFn'; } // 函数表达式 const normalFn = function() { return 'no 阅读全文
posted @ 2021-06-26 12:44 浅笑·
摘要:引入一个现实生活中的案例 我们作为用户需要去如何评估一个房子的好坏、如何办理住房手续等一些列繁琐的事物吗?显然,用户肯定不愿意这样做。用户最关心的是结果,用户对房子提出需求以及提供对等价值的金钱就可以获得满意的房子,这就是结果。 那么谁为用户去解决一系列繁琐的买房过程呢?当然就是“房屋中介”了!房屋 阅读全文
posted @ 2021-06-26 12:43 浅笑·
摘要:ES6允许按照一定模式从数组或对象中提取值,然后对变量进行赋值,称为解构。只要等号两边的模式相同,左边的变量就会被赋予对应的值,这种写法属于“模式匹配”。统称起来就叫做“解构赋值”。 let [a, b, c] = [1, 2, 3] 同时定义多个变量,a匹配1、b匹配2、c匹配3 解构赋值允许指定 阅读全文
posted @ 2021-06-26 12:40 浅笑·
摘要:1.call的实现 第一个参数为null或者undefined时,this指向全局对象window,值为原始值的指向该原始值的自动包装对象,如 String、Number、Boolean 为了避免函数名与上下文(context)的属性发生冲突,使用Symbol类型作为唯一值 将函数作为传入的上下文( 阅读全文
posted @ 2021-06-26 12:39 浅笑·
摘要:1.什么是伪数组 JavaScript中存在有一种类数组,或者说伪数组。经常见到的伪数组有函数的arguments对象、dom.querySelectorAll等获取的NodeList类(NodeList本身具有forEach方法)等。 伪数组并不是数组,它没有继承Array.prototype,但 阅读全文
posted @ 2021-06-26 12:34 浅笑·
摘要:什么是 GPU.js 首先,官网地址:https://gpu.rocks/ 简而言之,GPU.js 是一个 JavaScript 加速库,可用于使用 JavaScript 在 GPU 上进行通用计算。它支持浏览器、Node.js 和 TypeScript。 除了性能提升外,我推荐使用 GPU.js 阅读全文
posted @ 2021-06-26 12:32 浅笑·
摘要:前言 分享两个监测元素是否在视口内的方法 1. 位置计算 使用 Element.getBoundingClientRect() 方法返回元素相对于视口的位置 const isElementVisible = (el) => { const rect = el.getBoundingClientRec 阅读全文
posted @ 2021-06-26 12:30 浅笑·
摘要:MVC 那时计算机世界天地混沌,浑然一体,然后出现了一个创世者,将现实世界抽象出模型形成model,将人机交互从应用逻辑中分离形成view,然后就有了空气、水、鸡啊、蛋什么的。——《前端MVC变形记》 MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式。这种模式 阅读全文
posted @ 2020-12-12 14:31 浅笑·
摘要:一.setImmediate 目前只有IE10+和Nodejs支持该API。 立即触发回调函数,使其进入宏任务队列(macro task queue) 语法: // 只有一个参数 setImmediate(callback) 比setTimout(fn, 0)的执行顺序要快,性能也更高。因为setT 阅读全文
posted @ 2020-12-12 14:29 浅笑·
摘要:绑定确实是个有趣的话题。 现在我的绑定器有了不少的功能 1. 附着在Object对象上,一切以对象为中心 2. 与页面元素进行双向绑定 3. 与任意对象绑定,主要是应用在绑定到页面元素的一些属性上,比如style,当然也可以绑定到任意用户自定义的对象上 4. 可以绑定到方法,让对象具有AddEven 阅读全文
posted @ 2020-12-12 14:27 浅笑·
摘要:对象遍历 为了便于对象遍历的测试,我在下面定义了一个测试对象 obj。 测试对象 // 为 Object 设置三个自定义属性(可枚举) Object.prototype.userProp = 'userProp'; Object.prototype.getUserProp = function() 阅读全文
posted @ 2020-12-12 14:26 浅笑·
摘要:需求 这是从一个项目中提取的需求。 大致的思路是: 通过获取后端的一系列人员的点位信息,在前端模拟人员的一段时间内的行动过程。 我们的开发人员首先想到的思路是,把获取的点位列表信息,每两个取取来,组成一条直线路径。然后基于每一条直线路径,创建一个动画Animate对象。(Animate是我们内部的一 阅读全文
posted @ 2020-12-12 14:23 浅笑·
摘要:前言 Event Loop是计算机系统的一种运行机制,是个很重要的概念。而JavaScript用这种机制来解决单线程运行带来的问题。理解很熟悉将会有利于我们更容易理解vue的异步事件。 JavaScript是单线程的 1、什么是单线程? 单线程在程序执行时,所走的程序路径按照连续顺序排下来,前面的必 阅读全文
posted @ 2020-12-12 14:21 浅笑·

上一页 1 2 3 4 5 6 7 ··· 14 下一页