js常用的几种拷贝方法的优缺点
记录下js中关于浅拷贝和深拷贝的一些问题,下面是代码,可以自行复制到js文件中,逐步去掉注释查看结果,记得要用node运行。 1. 直接赋值 var obj2 = obj1; 这种方式是最常用的,也是速度最快的,但是这是属于浅拷贝,指向的是...
记录下js中关于浅拷贝和深拷贝的一些问题,下面是代码,可以自行复制到js文件中,逐步去掉注释查看结果,记得要用node运行。 1. 直接赋值 var obj2 = obj1; 这种方式是最常用的,也是速度最快的,但是这是属于浅拷贝,指向的是...
forEach() forEach没有返回值。 是一个普通的for循环,写法上比for循环简单,适用于普通的循环 接收三个参数:每个数组的元素,下标index,自身 let a1 = ['hello', 'world'] let b1 = ...
for是js中最常用的循环语法,一般用来遍历数组或者直接循环一定的次数。 var arr = [1, 2, 3, 4]; for (var i = 0; i < arr.length; i++) { console.log(arr[i...
continue是跳出当前循环并继续执行下一次循环。 (function () { for (let i = 0; i < 5; i++) { if(i===3){ continue; // break; // return; } c...
Generator函数的用法很简单,就是在函数后面加上一个*号即可 let go = function* (x) { yield x+1; yield x+2; yield x+3; return x; } var g = go(10); ...
async和await是ES6中新增的语法,await可以用来解决回调地狱的问题,可以将promise转为同步执行。 var p = function (num) { return new Promise((resolve, reject)...
var p = new Promise((resolve, reject) => { setTimeout(() => { resolve(111); }, 1000); }); p.then(result => { co...
通过多个属性判断用户访问设备,准确率99% (function () { var sUserAgent = navigator.userAgent.toLowerCase(); var bIsIpad = sUserAgent.match(...
ES6提供了更接近传统语言的写法,引入了Class(类)这个概念,作为对象的模板。通过class关键字,可以定义类。 //定义类 class Point { constructor(x, y) { this.x = x; this.y = ...
字母 日期或时间元素 表示 示例 G Era 标志符 Text y 年 Year 1996 M 年中的月份 Month July w 年中的周数 Number 27 W 月份中的周数 Number 2 D 年中的天数 Numb...