随笔分类 -  javaScript

摘要:在需要跳转得页面通过url拼接需要传递得参数 window.location.href = "../html/trainingOrghome.html?" + "accountTypeId="+2+"&openid="+openid+"&nickname="+nickname+"&headimgur 阅读全文
posted @ 2020-01-06 15:22 leahtao 阅读(4353) 评论(0) 推荐(0) 编辑
摘要:首先下载better-scroll插件,地址:https://github.com/ustbhuangyi/better-scroll (vue项目的话也可以通过npm install better-scroll --save安装) 引入bscroll.js 然后通过new BScroll调用 <! 阅读全文
posted @ 2019-12-26 12:39 leahtao 阅读(1990) 评论(0) 推荐(0) 编辑
摘要:<template> <div> <ul class="content"> <li>分类列表</li> <li>分类列表</li> <li>分类列表</li> <li>分类列表</li> <li>分类列表</li> <li>分类列表</li> <li>分类列表</li> <li>分类列表</li> 阅读全文
posted @ 2019-12-26 10:47 leahtao 阅读(727) 评论(0) 推荐(0) 编辑
摘要:方式一: Object构造函数模式 * 套路: 先创建空Object对象, 再动态添加属性/方法 * 适用场景: 起始时不确定对象内部数据 * 问题: 语句太多 /* 一个人: name:"Tom", age: 12 */ // 先创建空Object对象 var p = new Object() p 阅读全文
posted @ 2019-12-24 11:49 leahtao 阅读(117) 评论(0) 推荐(0) 编辑
摘要:本文链接: https://lienjack.github.io/Blog/knowledge/js/3.this.html#%E4%B8%A5%E6%A0%BC-%E9%9D%9E%E4%B8%A5%E6%A0%BC%E6%A8%A1%E5%BC%8F https://www.jianshu.co 阅读全文
posted @ 2019-12-23 14:44 leahtao 阅读(372) 评论(0) 推荐(0) 编辑
摘要:本文链接:https://lienjack.github.io/Blog/knowledge/js/3.this.html#%E7%AE%AD%E5%A4%B4%E5%87%BD%E6%95%B0 本篇我们重点比较一下箭头函数与普通函数。 主要区别包括: 1.没有 this 箭头函数没有 this, 阅读全文
posted @ 2019-12-23 14:36 leahtao 阅读(281) 评论(0) 推荐(0) 编辑
摘要:深浅拷贝对比 深拷贝和浅拷贝是只针对Object和Array这样的对象数据类型的。 深拷贝和浅拷贝的示意图大致如下: 基本类型--名值存储在栈内存中,例如let a=1; 当b=a复制的时候,栈内存会新开辟一个内存,如下: 当你修改a=2时,b并不会收到影响,因为他有了自己独立的内存空间,但这并不是 阅读全文
posted @ 2019-12-23 11:13 leahtao 阅读(772) 评论(0) 推荐(0) 编辑
摘要:原型: 每个函数都有一个prototype属性,这个属性指向这个函数的原型对象,如下: function Fn () {} console.log(Fn.prototype) 用图表表示如下: 函数Fn有一个prototype属性,这个属性就指向它的原型对象即Fn.prototype,原型对象又有一 阅读全文
posted @ 2019-12-20 11:53 leahtao 阅读(262) 评论(0) 推荐(0) 编辑
摘要:一、filter filter用于对数组进行过滤。它创建一个新数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。 注意: filter() 不会对空数组进行检测。 注意: filter() 不会改变原始数组。 1.语法 Array.filter(function(currentValue, 阅读全文
posted @ 2019-12-19 14:58 leahtao 阅读(1845) 评论(0) 推荐(0) 编辑
摘要:一、时间戳 时间戳是以时间元年1970年开始算起到当前时间的一个值,以秒为单位,比如1535694719秒,如何转化为我们想要的格式,yyyy/mm/dd或者yyyy-MM-dd hh:mm,格式根据自己想要的进行改。 二、将时间戳转成Data对象 1 function(value) { 2 //将 阅读全文
posted @ 2019-12-16 11:32 leahtao 阅读(784) 评论(0) 推荐(0) 编辑
摘要:内存溢出:一种程序运行出现的错误,当程序运行需要的内存超过了剩余内存空间、时,就会抛出内存溢出错误内存泄漏:占用的内存没有及时释放,内存泄漏积累过多就容易导致内存溢出,常见的内存泄漏:意外的全局变量、没有及时清理的计时器或回调函数、闭包 //内存溢出 var obj = {} for (var i 阅读全文
posted @ 2019-12-14 16:41 leahtao 阅读(206) 评论(0) 推荐(0) 编辑
摘要:参考链接:https://www.cnblogs.com/echolun/p/11897004.html 1、什么是闭包? 闭包在JavaScript高级程序设计(第3版)中是这样描述:闭包是指有权访问另一个函数作用域中的变量的函数。 我个人的理解更多是 :A函数里面嵌套了一个B函数,B函数使用了A 阅读全文
posted @ 2019-12-14 16:18 leahtao 阅读(177) 评论(0) 推荐(0) 编辑
摘要:一、什么是执行上下文 简单说就是代码运行时的执行环境,必须是在函数调用的时候才会产生,如果不调用就不会产生这个执行上下文。在这个环境中,所有变量会被事先提出来(变量提升),有的直接赋值,有的为默认值 undefined,代码从上往下开始执行,就叫做执行上下文。代码分为三类:全局代码、局部(函数)代码 阅读全文
posted @ 2019-12-13 15:31 leahtao 阅读(296) 评论(0) 推荐(0) 编辑
摘要:一、对提升的理解 引擎会在解析JavaScript代码之前首先对它进行编译,编译过程中的一部分工作就是找到所有的声明,并用合适的作用域将他们关联起来,这也正是词法作用域的核心内容。 简单说就是在js代码执行前引擎会先进行预编译,预编译期间会将变量声明与函数声明提升至其对应作用域的最顶端。 提升优先度 阅读全文
posted @ 2019-12-13 10:57 leahtao 阅读(362) 评论(0) 推荐(0) 编辑
摘要:在调用函数时,浏览器每次都会传递进两个隐含的参数: 1.函数的上下文对象 this 2.封装实参的对象 arguments - arguments是一个类数组对象,它也可以通过索引来操作数据,也可以获取长度 - 在调用函数时,我们所传递的实参都会在arguments中保存 - arguments.l 阅读全文
posted @ 2019-12-12 14:32 leahtao 阅读(529) 评论(0) 推荐(0) 编辑
摘要:语法: fun.call(thisArg, arg1, arg2, ...) thisArg 第一个参数thisArg是函数fun运行时指定的this值,这个值在非严格模式下,null和undefined都指向window,在严格模式下,是谁就指向谁自己,例子: var name = 'leah' 阅读全文
posted @ 2019-12-12 12:35 leahtao 阅读(113) 评论(0) 推荐(0) 编辑
摘要:1. 什么是浏览器内核? * 支持浏览器运行的最核心的程序 2. 不同的浏览器可能不太一样 * Chrome, Safari: webkit * firefox: Gecko * IE: Trident * 360,搜狗等国内浏览器: Trident + webkit 3. 内核由很多模块组成 主线 阅读全文
posted @ 2019-12-12 10:20 leahtao 阅读(129) 评论(0) 推荐(0) 编辑
摘要:定时器真是定时执行吗? 定时器是如何实现的? 做个测试 document.getElementById('btn').onclick = function () { var start = Date.now() console.log('启动定时器前...') setTimeout(function 阅读全文
posted @ 2019-12-11 20:33 leahtao 阅读(198) 评论(0) 推荐(0) 编辑
摘要:JavaScript 语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。为了协调事件、用户交互、脚本、UI 渲染和网络处理等行为,防止主线程的不阻塞,Event Loop 的方案应用而生。Event Loop 包含两类:一类是基于 Browsing Context,一种是基于 Worker 阅读全文
posted @ 2019-12-11 19:41 leahtao 阅读(1292) 评论(1) 推荐(0) 编辑
摘要:1. 进程:程序的一次执行, 它占有一片独有的内存空间 2. 线程: CPU的基本调度单位, 是程序执行的一个完整流程,是一个进程中代码的不同执行路线 3. 进程与线程 * 一个进程中一般至少有一个运行的线程: 主线程,进程启动后自动创建 * 一个进程中也可以同时运行多个线程, 我们会说程序是多线程 阅读全文
posted @ 2019-12-11 16:52 leahtao 阅读(117) 评论(0) 推荐(0) 编辑