
JavaScript
honeyfff
这个作者很懒,什么都没留下…
展开
-
数组与对象的浅拷贝
做项目的时候遇到一个筛选审核、处理审核的问题。 当修改了list(根据筛选条件筛选出来的数组)数组中每个对象的状态,allList(所有审核状态列表)内部的对象数据也会同步更新。 后来了解到是数组和对象的浅拷贝问题,现做以下纪录,仅供个人学习使用。 传参 或 使用变量给另一个变量赋值时,如果是基本数据类型(null,number,undefined,string,boolean)则是直接复制,但是如果是非基本数据类型(array,function,object等),则是复制对应的引用。 浅拷贝和深拷贝仅是对原创 2020-07-15 13:32:08 · 195 阅读 · 0 评论 -
ES6的导出方式
导出 // 1.直接一个包含多个变量、方法的对象 let name = '小明', function sum (num1,num2) { return num1 + num2; } expert { name,sum }; // 2.在声明时就直接导出 expert let height = 1.88; // 3.导出函数/类 expert function mul (num1, num2...原创 2020-05-21 08:50:28 · 1491 阅读 · 1 评论 -
ES6个人学习笔记
Array的扩展方法 构造函数方法:Array.from() 作用:将一个伪数组或者可遍历对象转换为真正的数组 <script> var array = { 0: 1, 1: "honey", length: 2 } let arr = Array.from(array); console.log(arr);// [1, "honey"]原创 2020-05-19 13:39:49 · 124 阅读 · 0 评论 -
setTimeout()是不是真正的异步
关于setTimeout是否是异步的问题一直很疑惑,今天查看了几篇他人的解释,做一下个人学习笔记。 首先 执行这样一段代码 console.log(111) setTimeout(() => { console.log(222); }, 3000) console.log(333) setTimeout(() => { console.log(444); }, 0) console.log(555) setTimeout(() => { console.log原创 2020-05-19 09:57:02 · 3736 阅读 · 2 评论 -
let、const关键字,箭头函数
## let关键字 与var变量相似,现在开发中多用let替换var 特点:在块级作用域中有效 不能重复声明 不会预处理,不存在变量提升 // 为多个按钮绑定点击事件 for (let i = 0;i < 3; i++) { let btn = btn[i]; btn.onclick(function () { console.log(i)//点击不同的按钮输出不同的i }) } // 为多个按钮绑定点击事件 for (var i = 0;i < 3;原创 2020-05-18 15:06:39 · 211 阅读 · 0 评论 -
call、apply、bind比较
三者相同点 call apply bind都可以改变函数调用的this指向 call与apply的不同 传入参数的不同,call可以按照顺序一次传入参数,apply的第二个参数只能是数组。 var o = {name :'coco'};function f (data) { console.log(this,data);} f();// call与apply的不同之处,在于传入参数形式不同// f.call(o,33);f.apply(o,[33]); call、apply与bind的不同 call()、a原创 2020-05-15 11:11:24 · 102 阅读 · 0 评论