随笔分类 - javascript
摘要:对象是无序属性的集合,而这些属性在创建是都带有一些特征值(可以理解为属性的属性,天生自带的),这些特征值是为了实现JavaScript引擎用的,因此JavaScript不能直接访问。 JavaScript通过这些特征值来定义属性的行为(属性是否删除,枚举,修改等)。 例如,在全局定义的属性是会挂载到
阅读全文
posted @ 2020-12-12 13:32
笑人
摘要:题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 解法 1:暴力法 遍历数组中的所有元素,找到是否存在。 时间复杂度是 O(N^2),空间复杂度是
阅读全文
posted @ 2020-12-12 12:43
笑人
摘要:解构:从数组和对象中提取值,对变量进行赋值。 一、数组的解构赋值 1.数组的元素是按次序排列的,变量的取值由它的位置决定 // 模式匹配 let [a, b, c] = [1, 2, 3]; let [foo, [[bar], baz]] = [1, [[2], 3]]; foo // 1 bar
阅读全文
posted @ 2020-12-12 12:41
笑人
摘要:一、引用库 html2canvas.js和canvas2image.js的下载地址: html2canvas.js: http://html2canvas.hertzen.com/dist/html2canvas.min.jscanvas2image.js: https://github.com/S
阅读全文
posted @ 2020-12-12 12:39
笑人
摘要:一.键盘事件 onkeydown: 按下键盘时触发 onkeypress: 按下有值的键时触发 注意: onkeypress按下 Ctrl、Alt、Shift、Meta 这样无值的键,这个事件不会触发对于有值的键,按下时先触发 keydown 事件,再触发这个事件 onkeyup:松开键盘时触发该事
阅读全文
posted @ 2020-12-12 12:38
笑人
摘要:总结获取url中查询参数的两种方式 通过正则表达式获取单个参数 url中的所有查询参数可以通过 window.location.search 字段获取,以字符串的形式返回。并有固定的格式 ?param1=value1¶m2=value2···,所以可以正则表达式匹配。 分析下需要匹配的格式:
阅读全文
posted @ 2020-12-12 12:36
笑人
摘要:开始 1.相关技术 本示例主要使用了 WebRTC 和 WebSocket: WebRTC(Web Real-Time Communication)即网页即时通信,是一个支持网页浏览器进行实时语音对话或视频对话的API。 WebSocket是一种在单个TCP连接上进行全双工通信的协议。在 WebSo
阅读全文
posted @ 2020-12-12 12:35
笑人
摘要:1.首先安装highcharts npm install highcharts --save 2.代码引入 //可以根据实际需求来引入对应的包 import Highcharts from 'highcharts/highstock'; import HighchartsMore from 'hig
阅读全文
posted @ 2020-12-12 12:32
笑人
摘要:链式调用原理: 链式调用原理就是作用域链;实现需要做的工作; 对象方法的处理 (操作方法) 处理完成返回对象的引用(操作对象) 第2步链式实现的方式: <1> this的作用域链,jQuery的实现方式;<2> 返回对象本身, 同this的区别就是显示返回链式对象; 一: var person =
阅读全文
posted @ 2020-12-12 12:31
笑人
摘要:背景 最近遇到一个下载的需求,由于 url 参数太长(常用的下载方法 a 标签或者 location.href 的方法都是 get 请求,get 请求参数长度有限制),无法下载,考虑了好几种方案,最终还是觉得通过 ajax 的 POST 方法进行下载,比较容易实现,下面记录实现过程以及遇到的问题。
阅读全文
posted @ 2020-12-12 12:30
笑人
摘要:该this关键字是在JavaScript中一个非常重要的概念,也是一个特别令人迷惑的这两个新的开发者和那些谁拥有在其他编程语言的经验。在JavaScript中,this是对对象的引用。该对象this是指可以改变,含蓄地基于它是否是全球性的,在对象上,或者在一个构造函数,也可以明确地变化根据的使用Fu
阅读全文
posted @ 2020-12-10 13:36
笑人
摘要:通过 babel 插件,我们很容易的就在编译时将某些代码转换成其他代码以实现某些优化。例如 babel-plugin-lodash 可以帮我们将直接 import 的 lodash 替换成能够进行 tree shaking 的代码;通过 babel-plugin-preval 在编译时执行脚本并使用
阅读全文
posted @ 2020-12-10 13:35
笑人
摘要:1. Commonjs模块规范 1.1 模块引用 var math = require('math'); 1.2 模块定义 上下文提供exports对象用于导出当前模块的方法和变量,并且他是唯一的导出出口,exports实际上是module.exports,而module.exports就是以一个暴
阅读全文
posted @ 2020-12-10 13:13
笑人
摘要:js是单线程的,为什么可以执行异步操作呢? 这归结与浏览器(js的宿主环境)通过某种方式使得js具备了异步的属性。 区分进程和线程: 进程:正在运行中的应用程序。每个进程都自己独立的内存空间。例如:打开的浏览器就是一个进程。 线程:进程的子集,是独立的。线程在共享的内存空间中运行。 浏览器是多进程的
阅读全文
posted @ 2020-12-10 13:12
笑人
摘要:js是单线程的,为什么可以执行异步操作呢? 这归结与浏览器(js的宿主环境)通过某种方式使得js具备了异步的属性。 区分进程和线程: 进程:正在运行中的应用程序。每个进程都自己独立的内存空间。例如:打开的浏览器就是一个进程。 线程:进程的子集,是独立的。线程在共享的内存空间中运行。 浏览器是多进程的
阅读全文
posted @ 2020-12-10 13:10
笑人
摘要:严格模式是什么意思?有什么用途?为什么我们应该使用它? 本文 将主要从这几个问题入手,讲述在 JavaScript 中使用严格模式的必要性。 严格模式是现代 JavaScript 的重要组成部分。通过这种模式,我们可以选择使用更为严格的 JavaScript 语法。 严格模式的语义不同于以前的 Ja
阅读全文
posted @ 2020-12-10 13:08
笑人
摘要:本文将介绍数据排序的基本算法和高级算法。这些算法都只依赖数组来存储数据。 数组测试平台 首先我们构造一个数组测试平台类 function CArray(numElements) { this.dataStore = []; this.numElements = numElements; this.t
阅读全文
posted @ 2020-12-10 13:06
笑人
摘要:平常我们都是不建议在代码上编写一些比较难理解的代码,例如 x == y 和 'A' > 'B' 。这篇文章或许不能给你带来什么大的帮助,但是却可以让你了解一些你可能没接触到的知识点。 由于有些参考资料来源于 ECMA 规范,所以感兴趣的可能需要先看《读懂 ECMAScript 规格》这篇文章,当然也
阅读全文
posted @ 2020-12-10 13:04
笑人
摘要:前一段时间,我创建了一个标题为“7个可爱的Web开发技巧”的帖子。在这里,我描述了一些有趣的技巧,您可以使用3种主要的Web技术之一来实现这些技巧-html,css和JavaScript。而且,我必须承认-你们似乎都喜欢它!因此,续集来了! 这次,为了更加一致,我决定只专注于JavaScript。它
阅读全文
posted @ 2020-12-10 13:02
笑人
摘要:介绍 我相信学习新事物并评估我们所知的东西对自己的进步非常有用,可以避免了我们觉得自己的知识过时的情况。在本文中,我将介绍一些常见的 JavaScript 知识。请享用! 1.声明 查看以下代码,并回答输出的内容(以及原因)。 // situation 1 console.log(person);
阅读全文
posted @ 2020-12-10 13:01
笑人

浙公网安备 33010602011771号