寒假在家真是有够无聊的,不能上网,没交通工具可以离开家里。 于是乎,把从学校里面带过来的几本书给看了。 之后又没东西看了,就一直在看Emacs Info。看着看着发现好多英文单词都不认识,都怪当初没有把英语好好学。这样,我就想到了Linux下的有名的国产开源辞典(stardict)。但是呢,每次都在emacs和stardict当中切换好不舒服。所以呢,我就打算自己写个在Emacs里面查询单词的接口
引:假如有n(n很大)个字符串,有q个查询,每个查询表示在这n个串里面是否存在这个要查询的串。一种方法就是直接暴力查找,但是复杂度很高,稍微优化一点的方法是先把n个串排序,然后二分查找,但复杂度仍可以优化,hash或者字典树都可以,这里介绍字典树。字典树是一颗树,每个节点都有多个子节点,子节点的数量取决于字符的范围,比如如果只有小写字母子节点就有26个就足够了,例如对于这六个字符串:ab, ada
转载 2024-05-04 12:01:20
0阅读
类的由来。ES6 提供了更接近传统语言的写法,引入了 Class(类)这个概念,作为对象的模板。通过class关键字,可以定义类。基本上,ES6 的class可以看作只是一个语法糖,它的绝大部分功能,ES5都可以做到,新的class写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已。上面的代码用 ES6 的class改写,就是下面这样。上面代码定义了一个“类”,可以看到里面有一个cons
转载 2024-07-03 16:40:28
40阅读
myArray:[ {people:'cn',id:1,name:'get001'}, {people:'cn',id:2,name:'pOST002'}, {people:'cn',id:3,name:'DELETE'}, {people:'us',id:4,name:'PATCH'} ], <d
p
原创 2022-09-20 11:57:16
73阅读
1. set ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。 Set 本身是一个构造函数,用来生成 Set 数据结构。 const s = new Set(); [2, 3, 5, 4, 5, 2, 2].forEach(x => s.add(x)); for (let i of s) { console.log(i); } // 2
转载 2024-10-22 15:11:17
121阅读
class User { constructor(name, age) { this.name = name this.age = age } static print(age) { console.log(this.name + ' ' + age) } sayHello() { console.
原创 2024-05-08 11:11:16
33阅读
1.1 对象在 Javascript 中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串、数值、数组、函数等。对象是由属性和方法组成的:属性:事物的特征,在对象中用属性来表示(常用名词)方法:事物的行为,在对象中用方法来表示(常用动词)1.2 类 class类抽象了对象的公共部分,它泛指某一大类(class)对象特指某一个,通过实例化一个具体的对象面向对象的思维特点:1、抽取
转载 2024-07-10 20:49:15
108阅读
定义数组 const array = [1, 2, 3]; 或者 const array = new Array(); array[0] = '1'; 建议尽量使用第一种形式定义数组,采用new的形式在大量的数组定义时,会比较耗时。 new关键字的使用,除了在需要实例化一个对象,或罕见的需要延时加载数据的情况外,你基本上不需要使用new关键字
转载 2024-04-01 00:07:21
35阅读
const m = new Map();// 增m.set('a', 'aa');m.set('b', 'bb');// 删m.delete('b');// 删全部m.clear();// 改m.set('a', 'aaa');// 查m.get('a');
原创 2022-09-13 15:01:13
97阅读
第十章 改进的数组功能  ES6标准在ES5的基础上,继续改进数组,为数组添加了很多新功能。例如:创建数组的新方法、几个实用便捷的方法及创建定型数组(Typed Array)的能力。本章一一讲解这些新特性。第1节 创建数组  1. 传统的创建数组的方法。  在ES6以前,创建数组的方式有两种:一种是调用Array构造函数,一种是使用数组自面量语法。由于在使用Array构造函数创建数组的时候,有时会
转载 2024-06-28 14:56:11
70阅读
let和const不存在变量提升console.log(a) // a is not defined let a = 6块级作用域 {}不能在同一作用域中重复声明const 声明只读常量 数组的解构赋值允许直接匹配赋值let [a, b, c] = [1, 2, 3] console.log([a,b,c]) // [1, 2, 3]允许默认值let [a,b='1'] = ['2'
转载 10月前
12阅读
一、定义类(ES6的类,完全可以看做是构造函数的另一种写法)class Greet { constructor(x, y) { this.x = x; this.y = y; } sayHello() { console.log(this.x + " " + this.y) } } let a = new Greet(
转载 2024-07-18 13:30:46
37阅读
以前我们使用ES5标准定义一个构造函数的过程如下:function Person(name,age){ this.name = name; this.age = age; //私有变量     var else="其他"; //私有方法 function sayName(){ alert(that.name); }
get关键字特性get关键字可在对象内部使用,可为此对象创造一个伪属性。先看下面一个例子:let obj = { get name(){ let a =10; return a; } } console.log(obj.name); //10当我们去调用o
ES6新特性 class 类 (extends继承) @example: class Player { constructor(x, y) { this.x = 0; this.y = 0; } getPosition() { return this.x + ',' + this.y; } jumpFoward() { this.x = this.x
转载 2024-09-11 11:41:56
23阅读
一.ECMAScript6,即 ES6,是 ECMAScript 的第六次修订,于 2015年完成,也称 ES2015;ES6 是继 ES5 之后的一次改进,相对于 ES5 更加简洁,提高了开发效率.二.ES6新增的方法:1.新增声明命令 :let 和 const 在 ES6 中通常用 let 和 const 来声明,let 表示变量、const 表示常量.特点:let 和 const 都是块级作
转载 2024-09-03 11:42:50
3235阅读
总结: var  let const的区别数组新增拓展 对象新增拓展 函数新增拓展 Set 和 Map Promise Generator Proxy Module Decorator 具体介绍: 1.var  let  const 一、var1、在ES5中,顶层对象的属性和全局变量是等价的,用var声明的变量既是全局变量,也是顶层变量:顶层对象,在浏览器环境指的是w
转载 2024-10-18 15:52:54
25阅读
ES6变量和的定义方式let变量的定义在以前ES5里面,我们使用var定义关键字有以下几个特点1.var定义的变量没有区域性,它必须定义在方法里面才有区域性2.var定义的变量会有一个建立阶段,在定义之前是可以使用这个变量的,只是没有值,值是undefinedlet变量let定义的变量没有建立阶段同时let定义的变量会有先天的自带闭包特性let定义虽然没有建立阶段,但是在之前会有一个扫描特性let
转载 2024-03-20 14:33:29
33阅读
A JavaScript Proxy allows you to intercept operations performed on objects, arrays, or functions like property lookup, assignment, invocation, propert
转载 2017-01-11 21:48:00
392阅读
2评论
原创 2021-07-15 16:04:56
383阅读
  • 1
  • 2
  • 3
  • 4
  • 5