JavaScript中的基本数据类型 在JS中,有6种基本数据类型: string number boolean null undefined Symbol(ES6) 除去这六种基本数据类型以外,其他的所有变量数据类型都是Object.基本类型的操作在JS底层中是这样实现的: // 1. 申请一块内存,存储foo变量的内容为1 let foo = 1 // 2. 定义foo为1时,foo的数据类型是number typeof foo // "number" // 3. 我们知道,con…
JavaScript 是单线程执行的 JavaScript运行在浏览器中.浏览器是多线程的,但只分配了其中一条给JavaScript,作为它的主线程.对于编码者来说,JavaScript是单线程的.因此JavaScript中存在以下几种异步行为: 事件绑定(addEventListener) 定时器(setTimeout.setInterval) AJAX(axios).fetch 所有跟Promise的resolve.reject相关的行为(generator.async/await) Jav…
HTML5中新增了History API,它用于管理浏览器路由跳转的一个url栈.History是window对象的一部分,它也是一个对象,因此称它是BOM(类似DOM,Browser Object Model)中的一份子.History对象包含了用户在浏览器端访问过的所有url. 一.为什么存在History对象 当使用location.herf或a标签中的非锚点方式的href进行页面跳转时,会造成整个页面的刷新.但目前来说,越来越多的单页应用利用ajax技术进行异步请求,仅仅依靠数据变化更改…
JavaScript是一门函数式的面向对象编程语言.了解函数将会是了解对象创建和操作.原型及原型方法.模块化编程等的重要基础.函数包含一组语句,它的主要功能是代码复用.隐藏信息和组合调用.我们编程就是把一个需求拆分成若干函数和数据结构的组合实现,其中算法又是实现正确函数的方法论.我们先介绍基础知识:① 在JavaScript中,函数对象背后到底有什么:② 函数调用的模式有多少种:③ 作用域与闭包.至于递归.记忆.回调.级联.模块.柯里化等,我们放到进阶知识中再涉猎. 一. 函数对象 前面我们提到…
在一般的编程语言中,我们使用继承来复用代码,做成良好的数据结构.而在JavaScript中,我们使用原型来实现以上的需求.由于JavaScript专注于对象而摒弃了类,我们要明白原型和继承的确是有差异的,但很多人接受不了这个事实,因此用某些语法来模仿类的操作.但如果我们要学习JavaScript,还是要抛开各种写法,先从原理上理解原型.JavaScript中原型并不是一个很难的事,但它是一个全新的概念,因此需要一些时间去接受. 1. 原型在哪儿 原型指明了一个对象的“身份”.在前面的介绍中我们知…
数组,是一段线性分配的,具有非常高性能的数据结构.简单地说,数组以连续的空间存储,通过整数地计算偏移量访问其中的元素,将读取修改的时间复杂度降低至O(1),我们称之为猝发式存取.是不是非常期待?没错,像这样的好东西,JavaScript没有. 1. Array简介 但作为替代,JavaScript设计者想出了一个更方便但性能相对较低的方案,打印观察Array.prototype,会发现,设计者为我们提供的是一个array-like(类数组)的对象.在检索和更新属性上,Array就和普通的对象一模…
1. 对象的简单介绍与一些注意事项 JavaScript中具有几个简单数据类型:数字.字符串.布尔值.null值以及undefined值.除此之外其余所有值(包括数组.函数,甚至正则表达式)都是对象.数字.字符串以及布尔值表面是对象(因为他们具有方法),但它们是不可变的,只是JavaScript在引用某个数字.字符串或者布尔值时,通过调用new Number().new String()和new Boolean()构造器将其转换为了数字.字符串或布尔对象,它自有的方法也是从原型中继承而得到.基本…
前言:做一名Web设计师是一件令人兴奋的事.在Web技术中,JavaScript是一个经历从被人误解到万众瞩目的巨大转变,在历史的冲击中被留存下来的个体.因为JavaScript的引导,Web开发也从混乱无序的状态转变为需要经过严格训练才能胜任的工作.当大家谈论起Web开发时,自然会提到Web标准中的三门语言:①HTML(超文本标记语言)②CSS(层叠样式表)③JavaScript(没法翻译).通常来说HTML和CSS总是占据着核心地位,但它们三者之间不存在对抗关系,反而是交融.互助的关系(尽管…
在介绍JavaScript语法前,我们需要知道,学习语法必须要多利用手敲代码来巩固记忆.因此,由于JavaScript的特性,它不能像C++和Java一样独立地编译及运行,我们需要在调试运行JavaScript前创建好它的HTML载体.本文主要介绍了使用vs code搭建网页开发环境的一些简单操作.HTML文档模板标签的部分作用和网页开发时的一些注意事项,有基础的同学可以跳过. 事实上,我们可以用任何的文本编辑器来编写代码,甚至是一个记事本.编写JavaScript代码的方式有很多,可以直接在H…
1.认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树). 先来看看下面代码: 将HTML代码分解为DOM节点层次图:…