随笔分类 -  javascript

上一页 1 2 3 4 5 6 ··· 15 下一页
摘要:1、call函数封装实现 // 手写call函数 function call(Fn,obj,...arg){ // 如果obj为null或者undefined,则指向window if(obj undefined || obj null){ // globalThis是ES11的新特性,指向全局 o 阅读全文
posted @ 2021-07-14 18:24 笑人
摘要:基本概念 Context是 react中为了避免在不同层级组件中逐层传递props的产物,在没有Context的时候父组件向子组件传递props属性只能在组件树上自上而下进行传递,但是有些属性并不是组件树的每层节点都有相同的需求,这样我们再这样逐层传递props就显得代码很繁琐笨重。 使用react 阅读全文
posted @ 2021-07-14 18:23 笑人
摘要:首先本人通过一个案例来展示jQuery的链式编程风格。先写一个页面,展示一个列表,代码如下: <body> <div> <ul class="menu"> <li class="level1"> <a href="#">水果</a> <ul class="level2"> <li><a href=" 阅读全文
posted @ 2021-07-14 18:21 笑人
摘要:ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,正式发布与2015年6月。它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语言。 ECMAScript 6,即所谓的现代Javascript,具有强大的功能,例如块作用域 阅读全文
posted @ 2021-07-14 18:19 笑人
摘要:1:变量与属性 以下代码输出什么: const object = { message: 'Hello, World!', getMessage() { const message = 'Hello, Earth!'; return this.message; }};console.log(objec 阅读全文
posted @ 2021-07-14 18:16 笑人
摘要:前言 二叉树(Binary Tree)是一种树形结构,它的特点是每个节点最多只有两个分支节点,一棵二叉树通常由根节点、分支节点、叶子节点组成,如下图所示。每个分支节点也常常被称作为一棵子树,而二叉堆是一种特殊的树,它属于完全二叉树。 二叉树与二叉堆的关系 在日常工作中会遇到很多数组的操作,比如排序等 阅读全文
posted @ 2021-07-14 18:15 笑人
摘要:1. 图形平移 首先我们来看如何实现图形的平移操作。 平移的操作就是将图形的原始坐标加上对应的移动距离。首先来看下平移的实现 const vertexShaderSource = "" + "attribute vec4 apos;" + // 定义一个坐标 "uniform float x;" + 阅读全文
posted @ 2021-07-14 18:13 笑人
摘要:背景 这两天做 Code Review 的时候, 发现很多 if-else / switch 语句,并不是特别优雅。 在一些逻辑复杂的地方,看起来比较臃肿, 不是那么好读。 举个例子: function getTranslation(rhyme) { const lowercasedRhyme = 阅读全文
posted @ 2021-07-14 18:12 笑人
摘要:原简单的滚动轮播代码 <html> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-widt 阅读全文
posted @ 2021-07-14 18:09 笑人
摘要:语法 假设有一个getjsON方法,它返回一个promise,该promise会被resolve为一个jsON对象。我们想要调用该方法,输出得到的JSON对象,最后返回"done"。 以下是使用promise的实现方式: const makeRequest = () => getJSON() .th 阅读全文
posted @ 2021-07-07 17:25 笑人
摘要:添加/删除元素 push() 数组末端添加元素 let arr = ['JavaScript', 'css']; alert( arr.push('html') );// 3 alert( arr );// JavaScript, css, html pop() 移除并返回数组最后一个元素 let 阅读全文
posted @ 2021-07-07 17:23 笑人
摘要:01-随机获取布尔值 此函数将使用Math.random()方法返回布尔值(真或假)。Math.random创建一个介于0和1之间的随机数,然后我们检查它是否大于或小于0.5。这意味着有50/50的机会会得到对或错。 const getRandomBoolean = () => Math.rando 阅读全文
posted @ 2021-07-07 17:19 笑人
摘要:1.Jquery的实现: /** * 倒计时 * e 代表发送按钮对象 */function resetTime(e){ var second = 60; var timer = null; timer = setInterval(function(){ second -= 1; if(second 阅读全文
posted @ 2021-07-07 17:15 笑人
摘要:substring()方法 方法用于提取字符串中介于两个指定下标之间的字符 substring(start,end) 参数 描述 start 必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。 stop 可选。一个非负的整数,比要提取的子串的最后一个字符在 s 阅读全文
posted @ 2021-07-07 17:13 笑人
摘要:1、JavaScript的作用域链 首先看下下面这段代码: <script type="text/javascript"> var rain = 1; function rainman(){ var man = 2; function inner(){ var innerVar = 4; alert 阅读全文
posted @ 2021-07-07 17:11 笑人
摘要:思想 快速排序的基本思想是选择数组中的一个元素作为关键字,通过一趟排序,把待排序的数组分成两个部分,其中左边的部分比所有关键字小,右边的部分比所有关键字大。然后再分别对左右两边的数据作此重复操作,直到所有元素都有序,就得到了一个完全有序的数组。 来看一个例子,以数组[4, 5, 2, 7, 3, 1 阅读全文
posted @ 2021-07-07 17:09 笑人
摘要:1. 利用对象的 key 唯一 众所周知,对象的key不可重复,否则后者将覆盖前者。利用该特性,实现数组去重,遍历数组,将数组的每一项做为对象的key值 let obj = {}; for (let i = 0; i < arr.length; i++) { let item = arr[i] if 阅读全文
posted @ 2021-07-07 17:07 笑人
摘要:1. JavaScript的完整性检查 作为一个前端开发者,你可能已经使用**< script >**标签来导入第三方库。你想过这样做的安全风险吗?如果第三方资源被篡改了怎么办?是的,当你在你的网站上渲染外部资源时,这些事情都可能发生。因此,你的网站可能会面临一个安全漏洞。作为对此的安全措施,你可以 阅读全文
posted @ 2021-07-07 17:05 笑人
摘要:继承的7种方式 原型链继承构造函数继承组合继承原型式继承寄生式继承寄生组合式继承Es6 class extends 继承 原型链继承: 将父亲的实例作为孩子的原型. 优点: 父亲的方法可以被子类复用 缺点: 父类的所有属性都会被子类进行共享, 更改了一个子类的属性, 其他的子类的属性也一起变了. 子 阅读全文
posted @ 2021-07-07 17:03 笑人
摘要:一、Map Map可以用来存储键值对,在一定程度上扩展了Object的内容。 1. Map的基本API 创建新的Map实例 // 创建一个空映射 let map = new Map() // 传入一个包含键值对组的可迭代对象, // 传入的可迭代对象会按顺序插入到新的map实例里 let arr = 阅读全文
posted @ 2021-07-07 17:01 笑人

上一页 1 2 3 4 5 6 ··· 15 下一页