JavaScript异步编程Promise
Promise-async/await 基于回调的异步编程 在需要远程请求脚本文件,并执行其中函数时,可以使用异步方式。 setTimeout 函数允许异步执行。 function loadScript(src, callback) { let script = {src: '', onload
Promise-async/await 基于回调的异步编程 在需要远程请求脚本文件,并执行其中函数时,可以使用异步方式。 setTimeout 函数允许异步执行。 function loadScript(src, callback) { let script = {src: '', onload
错误处理 try-catch 完整语法: try { // 代码... } catch (err) { // 错误捕获 // 若无错误,自动忽略 } finally { // 无论是否发生错误都会执行 } 首先,一行一行执行try块的内容 执行遇到错误时,引擎会控制流转向catch
类 可以认为其为一个语法糖,本质为 new Function 的语法。 旨在使内容更易阅读,但不引入任何新内容的语法 Class 基本语法 语法 class User { constructor(name) { this.name = name; } sayHi() {
对象属性配置 属性标志和属性描述符 属性标志 对象的属性除了 value 之外,还有三个其余特性: writable:为true则表示可以被修改,否则为只读; enumerable:为true表示可被循环列出,否则不可被迭代循环展示; configurable:为true表示当前属性可被修改或者删除
函数进阶 递归与堆栈 递归 一种编程模式,将一个任务可以自然地拆分成多个相同类型但更简单的任务。 简单来说就是将任务拆分为最基础情况和调用自身,通过不断调用自身到达最基础情况。 function pow(x, n) { if (n == 1) { return x; } else {
代码质量 代码风格 花括号风格 if (n < 0) { console.info(`Power ${n} is not supported`); } // 或者极短一行 if (n < 0) return null; 避免长行 一行代码的最大长度通常是 80 或 120 个字符。 // 回
数据类型 对象包装器 针对原始类型 原始类型理论上只提供单个原始值,但却允许访问字符串、数字、布尔值和symbol的属性和方法,这是因为进行了额外的操作:使用对象包装器,使用后即被销毁。 字符串包装器:String 数字包装器:Number 布尔包装器:Boolean Symbol包装器:Symbo
Object 基础知识 对象 相比于其余7种原始类型只包含一种东西(字符串/数字等),对象用来存储键值对和更复杂的实体信息。 对象创建 创建空对象: // “构造函数” 的语法 let user = new Object(); // “字面量” 的语法 let user = {}; 创建带有
基础知识 代码规范 每条语句独占一行,以提高代码的可读性。 每条语句结束必须添加";"分号,明确语句结束。 注释。 // 这行注释独占一行 ...代码 /* 两个消息的例子。 这是一个多行注释。 禁止多行注释嵌套多行注释!!! */ /** * 这是函数的文档注释 * @param {*} x *
JavaScript简介 脚本语言 除了浏览器和服务端执行,可以在任意搭载JavaScript引擎(或称为JavaScript虚拟机)的设备中运行。 JavaScript引擎 V8:Chrome、Opera 和 Edge 中的 JavaScript 引擎。 SpiderMonkey:Firefox