JS的组成 JavaSript基础 ECMAScript 基本语法,为页面交互打基础。 Web APIs DOM BOM 是W3C组织的标准,是js的应用,为js独有的部分。 DOM 文档对象模型,是W3C组织推荐的处理可扩展标记语言(HTML/XHTML)的标准编程接口。 W3C定义了一系列DOM接口,通过这些接口可以改变网页的内容
let与const都是只在声明所在的块级作用域内有效。 let声明的变量可以改变,值和类型都可以改变,没有限制。 const声明的变量不得改变值,这意味着,const一旦声明变量,就必须立即初始化,不能留到以后赋值。 const a ;//报错,一旦声明变量,应该立即赋值!! const b = 2; b = 3//报错,因为定义
Node.j是运行在服务器端的JavaScript。是一个基于Chrome Javascript运行时建立的一个平台。是一个事件驱动I/O服务端Javascript。 建立服务器: let http=require('http');// let server=http.createServer((req,res)=>{//建立http服务 console.log('搭建成功');//若打印则
1. charAt( ) 获取指定下标处的字符 let str = 'hello' console.log(str.charAt(0));//h 2. charCodeAt 获取下标出的字符的Unicode码 let str = '12345' console.log(str.charCodeAt(1));//得到的结果为44 3. substring 根据下标范围返回字符 l
Set 类似于数组,但成员都是唯一的,实现了iterator接口,可以使用扩展运算符 和 for...of 遍历 let s = new Set([1,2,3]) // new Set()如果传递一个可迭代的对象,这个对象所有的元素被添加到新的Set中 // s = {1,2,3} s.size // 返回集合的元素个数 s.add(4) // 添加一个元素 4 s = {1
工作原理 首先在未排序的序列中初始化,默认最小数值为未排序的序列的起始位置。即外层循环 再从除起始位置与已排序元素的剩余未排序元素中继续寻找最小元素,然后交换起始位置的元素与最小元素,这个起始位置就成为了已排序序列的末尾元素。而且根据逻辑后面找到的第二小元素一定比
遇到问题 在网页开发中,经常需要在网页中添加音乐模块,其中使用到的自然就是<audio>元素了 最近,在一个项目当中使用到了<audio>元素,其中遇到了几个问题,就是如何获取<audio>的总时长、当前播放时间以及缓存进度 解决问题 在网上找了一些资料后,发现了以下三个属性: 1. dura
为什么要写这类文章 作为一个程序员,代码能力毋庸置疑是非常非常重要的,就像现在为什么大厂面试基本都问什么 API 怎么实现可见其重要性。我想说的是居然手写这么重要,那我们就必须掌握它,所以文章标题用了死磕,一点也不过分,也希望不被认为是标题党。 作为一个普通前端,我是真的写不出 P
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minim
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minim
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minim
1、安装 npm i vue-qriously -S 2、引入,main.js文件 // 二维码 import VueQriously from 'vue-qriously' Vue.use(VueQriously) 3、使用 <Button type="info" @click="scan">查看</Button> <Button type="info" @click="d
作用域链和闭包 1. 作用域 作用域是指在程序中定义变量的区域,该位置决定了变量的生命周期。通俗地理解,作用域就是变量与函数的可访问范围,即作用域控制着变量和函数的可见性和生命周期。 在 ES6 之前,ES 的作用域只有两种:全局作用域和函数作用域。 全局作用域中的对象在代码中的任
第三阶段课程介绍: web前端 l 数据库 l SpringBoot Web前端-HTML l HTML作用: 负责搭建页面结构和内容 (盖房子) l 学习HTML主要学习的就是有哪些标签 文本相关标签 l h1-h6 文本标题, 特点: 独占一行, 自带上下间距, 字体加粗 l p 段落标签, 特点: 独占一行,自带上下间距 l hr
use std::collections::HashMap; macro_rules! map { ($($key:expr => $val:expr),*) => {{ let mut hm = HashMap::new(); $(hm.insert($key, $val);)* hm }}; //要返回,相当于是FN,所以必须多加一对{} } fn main(){ let a = map!("s
工作中,我们经常需要把Base64编码图片上传到服务器或七牛云, 格式如下: data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCg
前言: 做过前端开发的都知道,JavaScript是单线程语言,浏览器只分配给JS一个主线程,用来执行任务,但是每次一次只能执行一个任务,这些任务形成一个任务队列排队等候执行; 但是某些任务是比较耗时的,如网络请求,事件的监听,以及定时器,如果让这些非常耗时的任务一一排队等候执行,那么程序执行效
说明 后台提供MxFileConvert.exe程序,它可以将CAD图纸转换成前台能加载显示的格式,程序调用方法见: https://help.mxdraw.com/?pid=32中的“如何在自己系统中浏览dwg文件”章节,该程序还可以在转换过程中,使用JS编程,读写CAD文件,而读取的CAD图纸数据可以写成json文件,方便传给前
第一步:下载three的npm包 npm i three -S 第二步 创建容器 <div id="container"><div> 第三步 引入three文件 i mport * as THREE from 'three' 第四步 声明需要用到的对象(这些对象生命在export default外面的话会得到一定的性能优化:因为在data函数里面声明的话vue需要监听这
1.判断字符串是否包含某个字段: A.search():方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。如果没有找到任何匹配的子串,则返回 -1。 var string = "foo", expr = /oo/; string.search(expr); // 位置为1 B.test() :使用正则检测方法用于检索
第一步下载 第二步 创建一个htmlToPdf.js的js文件 // 导出页面为PDF格式 import html2Canvas from 'html2canvas' import JsPDF from 'jspdf' export default { install(Vue, options) { Vue.prototype.getPdf = function () {
背景 有时候我们想看到非常新的数据,数据更新间隔很短,就考虑websocket来进行请求数据,减少轮训减轻前端以及后端服务器压力。 相关技术 Websocket介绍 WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket通信协议于2011年被IETF定为标准RFC 6455,并由R
es6 js开源后,然后让ECMA定制标准,2015.6之后的版本称为ES6 关键字 let console.log(n) let n = 40 // 没有隐式提前 es5没有代码块作用域,es6存在 if(1){ let a = 10 // let声明的作用域在for代码块中里面 } console.log(a) // 报错 let a = 10 let a = 40 // 报错,会报错 暂时
前言 JavaScript中的语句和表达式有什么不同之处? 对于这个问题,我似乎知道答案,但当我尝试向别人解释时,我却语塞了。对于这个问题我有一种感觉,但无法清晰的表达出来。 我后来才意识到,这个问题极其重要。它可以说是房屋的承重墙,将有助于支撑大量的JavaScript知识。 对React开发者来说
在 Vue,除了核心功能默认内置的指令 ( v-model 和 v-show ),Vue 也允许注册自定义指令。它的作用价值在于当开发人员在某些场景下需要对普通 DOM 元素进行操作。 Vue 自定义指令有全局注册和局部注册两种方式。先来看看注册全局指令的方式,通过 Vue.directive( id, [definition] ) 方