数据结构
文章平均质量分 52
题词策
总有一天你会站在世界最亮的地方。活成自己渴望的模样
展开
-
什么是 JSON ?
JSON 什么是JSON ? JSON : JavaScript Object Notation (JavaScript 对象表示法) JSON : 是轻量级的文本数据交换格式 JSON : 独立于语言,支持不同编程语言(PHP,JSP,.NET) JSON 语法规则 JSON 语法是 JavaScript 对象表示语法的子集。 数据由 键名/值 组成 数据由逗号分隔 大括号保存对象 中括号保存数组 JSON 数据的书写格式是:名称/值对。 名称/值 包括字段名称(在双引号中),后面写一个冒号原创 2020-06-07 20:45:12 · 184 阅读 · 0 评论 -
module
module ES6之前javascript没有模块体系,无法将一个大型的项目拆分成互相依赖的小文件,再用简单的方式进行简单的拼接。 社区制定了模块化开发的规范,最主要的两种模块化解决的方案:Commonjs,AMD两种。 commonjs用于服务器端 AMD用于浏览器端\ ES6的模块完全可以取代commonjs和AMD两种规范。 模块功能主要有两个命令构成:export和import。...原创 2020-04-28 22:35:40 · 222 阅读 · 0 评论 -
观察者模式(发布订阅模式)
观察者模式(发布订阅模式) 简介: 观察者模式(又被称为发布-订阅(public/Subscribe))模式,属于行为型模式的一种,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象再状态变化时,会通知所有的观察者对象,使他们能够自动更新自己。 代码块: <button id="public">发布动态</button> <...原创 2020-04-28 22:28:45 · 176 阅读 · 0 评论 -
什么是MVVM
MVVM m:model 数据层 v:view 视图层 vm: 数据双向绑定 封装mvvm的思路 1.实现一个Observer,对数据进行劫持,监听数据的属性变更,并在变动时进行notify Object.defineProperty(vm,key,{ set(){}, get(){} }) 2.实现一个compile,对指令进行解析,初始化视图,并且订阅数据的变更,绑定好更...原创 2020-04-28 22:25:13 · 435 阅读 · 0 评论 -
单列模式
单例设计模式 单例设计模式特点是在整个程序运行过程中一个类型只有一个实例。 - 单例模式一 //代码实现 class Person{ constructor(){ if(!Person.instance){ Person.instance = this; } return Person.instance } }...原创 2020-04-26 21:27:04 · 157 阅读 · 0 评论 -
解构赋值
解构赋值 什么是解构赋值? es6允许按照一定的模式,从数组或对象中提取值,给变量进行赋值,称为解构赋值。 特点: 1>给变量赋值 2>值的来源是对象或数组 3>规则:按一定的模式 一般用在数据交互,ajax请求数据。 数组解构 //1.这种比较散 let a = 10; let b = 12; let c = 13; c...原创 2020-04-26 21:23:27 · 269 阅读 · 0 评论 -
严格模式
严格模式 es5的代码前面加上"use strict",就处于严格模式 es5的严格模式是可选的 es6代码就处于严格模式 设立严格模式的目的: 消除javascript语法的一些不合理、不严谨之处,减少一些怪异行为。 消除代码运行的一些不安全之处,保证代码运行的安全 提高编译效率,增加运行速度 严格模式的特点 使用变量前必须先定义,不允许遗漏声明 不允许使用8进制的数字。va...原创 2020-04-26 21:18:23 · 128 阅读 · 0 评论 -
let和const区别
let和const nodejs是javascript的运行环境,可以使用node来测试。 1.定义(声明)变量 es5和es6的区别: 1. 作用域 //常见的块级作用域 if(){} for(){} while(){} es5 —>for //例1 if (true) { var a = 20; } console.log(a) //例2 for(var i=0...原创 2020-04-26 21:15:41 · 254 阅读 · 0 评论 -
模块化
模块化 js不支持模块化 **在ES6之前,社区制定了一套模块规范:** commonjs -------> 主要服务端 nodejs require('http'); AMD -------> requirejs CMD -------> seajs ES6出来,统一服务端和客户端模块规范 ** 模块化:** 注意:需要服务器 1>如何定...原创 2020-04-26 21:05:47 · 119 阅读 · 0 评论 -
什么是栈?
栈数据结构 栈是一种遵从后进先出(LIFO)原则的有序集合。 创建栈 案例 十进制转二进制 代码实现: class Stack{ constructor(){ this.items = {};//放置元素 this.count = 0; //元素的个数 } //添加元素 push(element){ this...原创 2020-04-26 21:02:29 · 199 阅读 · 0 评论 -
什么是队列?
队列 队列数据结构 ** 队列是遵循先进先出(FIFO,也称先来先服务)原则的一组有序的集合。** 创建队列 案例 约瑟夫环 丢手绢 击鼓传花 代码实现 class Queue{ constructor(){ this.items = {}; //队列的元素 this.count = 0; //记录键 this.lowestCount...原创 2020-04-26 20:57:54 · 246 阅读 · 0 评论 -
树结构
树结构 树是一种分层数据的抽象模型。常见树的例子有家谱,公司的组织架构 树相关的术语 由上图看得出树是一些节点的集合,总结一下树的一些基本概念: 节点:树中的数据元素都称之为节点 根:最上面的结点称之为根,一颗树只有一个根且由根发展而来,从另外一个角度来说,每个结点都可以认为是其子树的根 父亲:结点的上层结点,如图中,结点K的父亲是E、结点L的父亲是G 兄弟:具有相同父亲的结点...原创 2020-04-25 23:34:18 · 281 阅读 · 0 评论 -
图结构
队列数据结构 队列是遵循先进先出(FIFO,也称先来先服务)原则的一组有序的集合。 创建队列 //代码块 class Queue{ constructor(){ this.items={}; this.key=0; this.lowesKey=0; } enqueue(element){ this.items[...原创 2020-04-24 23:14:04 · 618 阅读 · 0 评论