注:基数排序中:r是关键字的基数,d是长度,n是关键字的个数 1.插入排序 基本思想:在序号i之前的元素(0到i-1)已经排好序,本趟需要找到i对应的元素x (此时即arr[i]) 的正确位置k,在寻找位置k的过程中与序号i-1到0的元素依次进行比较。如果x小于比较元素,则比较元素向后移动一位;否则 ...
分类:
编程语言 时间:
2017-12-24 20:08:57
阅读次数:
177
ES6 针对新的语法特性(解构、参数默认值、箭头语句、块级作用域let),对于函数的属性、参数、作用域进行了扩展,并对递归调导致内存栈溢出用进行了优化。 同时ES6规定,只要函数参数使用了默认值、解构赋值、扩展运算符,函数内部都不可以使用严格模式(ES5可以),否则会报错; 1. 函数参数默认值 E ...
分类:
其他好文 时间:
2017-12-24 11:19:57
阅读次数:
201
二.变量的解构赋值 1.ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。 2.解构赋值允许指定默认值,但如果一个数组成员不严格等于undefined,默认值是不会生效的。 3.解构不仅可以用于数组,还可以用于对象。 4.对象的解构与数组有一 ...
分类:
其他好文 时间:
2017-12-24 01:54:26
阅读次数:
162
上述代码运行,会在页面输出:1 20 21 301 302 310 311。 函数 printArray 使用了递归方式,逐一输出数组中的每个成员,中间以空格隔开。 ...
分类:
编程语言 时间:
2017-12-20 22:01:38
阅读次数:
278
// 1:交换变量的值 let a = 1; let b = 2; console.log(a,b); [a,b] = [b,a]; console.log(a,b) // 2:函数返回多个值 function fn (){ return [1,2,3] } let [a,b,c] = fn() c ...
分类:
其他好文 时间:
2017-12-18 01:19:02
阅读次数:
139
序: 1.用let const 声明变量。 2.解构赋值: 用途:a.交换变量的值; b.从函数返回多个值; c.函数参数的定义及默认值; d.提取JSON数据; e.遍历Map; f.输入模块。 3.字符串的扩展: a.完善以前超出范围的字符处理; b.可以用for...of循环; c.inclu ...
分类:
其他好文 时间:
2017-12-16 19:45:57
阅读次数:
116
1:对象解构赋值的实质:找到对应的属性名,将值对应的赋给他 {a,b} 等同于 {a:a,b:b} let {a:c,b} = {a:1,b:2} console.log(c, b) 2.对象的嵌套赋值 let obj = { p:[ 'hello', {y:'world'} ] } let {p, ...
分类:
其他好文 时间:
2017-12-16 14:46:33
阅读次数:
114
1: 基本用法 let [a,b,c] = [1,2,3] 总结:只要等号两边都是可循环的结构,等号右边的就会按照相应的位置把值赋给左边 2:高级用法 let [x,y = 1] = [1,2] 1) 变量可以有默认值 let [x,y = 1] = [1,2] 2)当且仅当等号右边的是undefi ...
分类:
其他好文 时间:
2017-12-15 22:29:35
阅读次数:
165
变量的作用域与声明: 与es5相比;出现的最大区别就是:{ } ,它在es6词法环境中是一个块作用域;并且 规定变量必须 先声明再使用; 解构赋值 @1数组的解构赋值; @2对象的解构赋值; @3字符串的解构赋值; 不管哪一种解构赋值,必须左右对应; 拓展运算符 ... 字符串模板 关于数字新增判断 ...
分类:
其他好文 时间:
2017-12-15 16:55:31
阅读次数:
139
一:数组的解构赋值 ES6.0规定按照一定的模式,从数组到对象中提取值,对变量进行赋值,这被称为解构。 以前的时候赋值是这样的形式: var a = 1; var b = 2; var c = 3; 现在是: var [a, b, c] = [1, 2, 3]; 从上面可以看出来可以从数组中提取值, ...
分类:
其他好文 时间:
2017-12-14 22:52:46
阅读次数:
146