es6
想要飞翔的小猪
这个作者很懒,什么都没留下…
展开
-
js 代码优化点
尽量不要操作dom元素, 使用使用逻辑短路替换三元运算符 var value=true;value?value=2:''value && value=2 使用对象属性替换if-else // if版本if (a == 1) {return 'one';} else if (a == 2) {return 'two';} else if (a == 3) {return 'three';} else {return ...原创 2020-12-30 15:27:44 · 281 阅读 · 0 评论 -
Uncaught (in promise) 的解决方法
在微信小程序开发过程中,使用了promise,但是在使用的过程中报Uncaught (in promise)错误,第一次遇到这种错误,所以在此记录下,方便以后解决问题 getImage: function(url) { return new Promise((resolve, reject) => { wx.getImageInfo({ src: ...原创 2019-04-09 14:57:46 · 209555 阅读 · 11 评论 -
js this 详解
this详解 你可能遇到过这样的 JS 面试题:{var obj = {foo: function () {console.log(this)}}var bar = obj.fooobj.foo(); // 打印出的 this 是 objbar(); // 打印出的 this 是 window} 这个原因是因为“Javascript中this永远是...原创 2018-12-18 17:52:32 · 714 阅读 · 1 评论 -
ES6 Promise对象
所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。 从语法上说,Promise 是一个对象,从它可以获取异步操作的消息。Promise 提供统一的 API,各种异步操作 都可以用同样的方法进行处理。 1.Promise特点:1.1 对象的状态不受外界影响。Promise对象代表一个异步操作,有三种状态:pending(进行中...原创 2018-12-03 23:52:49 · 215 阅读 · 0 评论 -
ES6函数的扩展
1.函数的默认值 es5{function logEvent(x, y) {y = y || 3;console.log(x + y)}logEvent('2', '3'); //2,3logEvent('2'); //2,3logEvent('2', ''); //2,3} 这个例子中,前面两个显示是我们想要的结果,如果参数y赋值了,但是对应的布尔值...原创 2018-12-03 23:26:33 · 165 阅读 · 0 评论 -
ES6数组的扩展--扩展运算符
1.扩展运算符扩展运算符(spread)是三个点(...)。它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列。{console.log(...[1, 3, 2, 43]);//1,3,2,43console.log(1, 2, ...[2, 5, 4], 9);//1,2,2,5,4,9let div = document.querySelectorAll...原创 2018-12-04 21:25:43 · 318 阅读 · 0 评论 -
ES6字符串的拓展
1.字符串的遍历器接口;for...of循环遍历 es5{let string = "9596zjzmdw";// for (let i = string.length; i > 0; i--) {for (let i = 0; len = string.length, i < len; i++) {console.log(string[i]);}}...原创 2018-11-19 21:51:01 · 163 阅读 · 0 评论 -
ES6 Map
1.含义和基本用法 JavaScript 的对象(Object),本质上是键值对的集合(Hash 结构),但是传统上只能用字符串当作键。这给它的使用带来了很大的限制。 例子{const data = {};const element = document.getElementById('myDiv');data[element] = 'metadata';data...原创 2018-11-22 17:11:42 · 1203 阅读 · 0 评论 -
Math对象和ES6Math对象的扩展
1.Math的静态属性 Math.E:常数e。 Math.LN2:2 的自然对数。 Math.LN10:10 的自然对数。 Math.LOG2E:以 2 为底的e的对数。 Math.LOG10E:以 10 为底的e的对数。 Math.PI:常数π。 Math.SQRT1_2:0.5 的平方根。 Math.SQRT2:2 的平方根。{console.log...原创 2018-11-20 21:59:45 · 1297 阅读 · 0 评论 -
ES6 数值的扩展
1.Number.isFinite()、Number.isNaN(); es5 isFinite方法返回一个布尔值,表示某个值是否为正常的数值。{isFinite(Infinity) // falseisFinite(-Infinity) // falseisFinite(NaN) // falseisFinite(undefined) // falseisFini...原创 2018-11-20 21:47:25 · 154 阅读 · 0 评论 -
ES6的6种声明方式
前面两种ES5中的语法var 和function,这两种就不多说了下面就来详细介绍下let和const、import和class1.let1.1只在当前代码块有用例子: { let a = 1; var b = 2; } console.log(a); //报错 c...原创 2018-11-01 14:35:24 · 1631 阅读 · 0 评论 -
搭建一个ES6环境
阮老师的文档教程:http://es6.ruanyifeng.com/由于现在浏览器支持的情况并不乐观,有的部分支持或干脆不支持,因此,我们很有必要来一个中间层工具,转译ES6成ES5,让我们使用上ES6的很多新的特性,同时写出来的代码转译成浏览器几乎都支持的ES5,这个就babel;在线转译工具:https://www.babeljs.cn/repl/目录结构:1.初始化项目...原创 2018-10-29 09:55:43 · 217 阅读 · 0 评论 -
ES6 Object.assign()的用法
1.Object.assign()基本用法:Object.assign方法用来将源对象(source)的所有可枚举属性,复制到目标对象(target)。它至少需要两个对象作为参数,第一个参数是目标对象,后面的参数都是源对象。let targetObj1 = { a: 1 }; let sourceObj1 = { b: 1 }; let sourceO...原创 2018-10-24 13:51:31 · 107205 阅读 · 6 评论