随笔分类 -  JavaScript

Javascript学习中的一些心得体会,分享出来!
摘要:好久好久没动笔了,还是当搬运工吧。转载一篇别人的。原出处是https://segmentfault.com/a/1190000014224541 this 是什么 理解this之前, 先纠正一个观点,this 既不指向函数自身,也不指函数的词法作用域。如果仅通过this的英文解释,太容易产生误导了。 阅读全文
posted @ 2021-10-17 23:28 天天向上吧 阅读(91) 评论(0) 推荐(1)
摘要:再当一次搬运工。在思否看到一篇讲Proxy的博文,转发过来,以飨自己。原文出自:理解Javascript的Proxy 一、关于Proxy Proxy在计算机领域是一个很普遍的概念,中文通常翻译为代理,“代理”一般用于描述某人或某事代表他人行事。常见的概念有Proxy Server(代理服务器)、Re 阅读全文
posted @ 2020-11-19 22:45 天天向上吧 阅读(1000) 评论(0) 推荐(1)
摘要:在园子里看到一篇讲解Object.defineProperty()的非常好的博文,我把他转载过来,给自己留个笔记。原文出处https://www.cnblogs.com/junjun-001/p/11761252.html#commentform 菜菜: “老大,那个, Object.defineP 阅读全文
posted @ 2020-10-21 18:55 天天向上吧 阅读(19802) 评论(6) 推荐(13)
摘要:在园子里看到一篇非常好的关于js数据拷贝的文章,把他转过来,给自己做个笔记。原文出自:JS中数组的拷贝方法 之前在写一个vue的计算属性时,大概是这样: computed: { updateList () { let newList = this.List /*do something*/ retu 阅读全文
posted @ 2020-09-06 12:17 天天向上吧 阅读(2890) 评论(0) 推荐(0)
摘要:这3个方法是JavaScript语言中的方法,前端开发中经常使用的。 一、qs.stringify()和qs.parse() qs是一个npm仓库所管理的包,可通过npm install qs命令进行安装. 1. qs.parse()将URL解析成对象的形式 2. qs.stringify()将对象 阅读全文
posted @ 2019-06-07 18:20 天天向上吧 阅读(1335) 评论(0) 推荐(0)
摘要:如题,在JSON格式的对象中,不允许出现注释语句,否则JavaScript代码不能正确解析。没有为什么,只能记住这个知识点。 比如我们最常见的package.json文件,它是一个配置文件,这个文件的内容就是一个JSON格式的对象,所以这个文件中不能出现注释语句,否则webpack打包时会报错。 如 阅读全文
posted @ 2019-01-24 17:07 天天向上吧 阅读(1600) 评论(0) 推荐(0)
摘要:在前端开发中免不了会做一些字符串拼接的工作,如果是大量拼接HTML代码,那将是一个非常痛苦的事情。好在ES6提供了一种新的语法,能够方便的进行大量的字符串拼接,这就是模板字符串表达式。 基本语法: 1.整个表达式需要使用一对 ··符号包住。这个符号不是引号,也不是句点。而是键盘左上的波浪线符号,不按 阅读全文
posted @ 2018-12-14 18:36 天天向上吧 阅读(5724) 评论(0) 推荐(0)
摘要:事件对象就是用来帮我们获取,在js事件被触发时的一些列有用信息。 事件对象的名字,一般使用event,但这不是必须的,可以用任何合法的变量名。 IE浏览器的事件对象模型跟其他浏览器是不一样的。它需要使用window.event,而且,不需要在事件处理函数中声明event参数 document.onc 阅读全文
posted @ 2018-12-12 14:23 天天向上吧 阅读(4410) 评论(0) 推荐(0)
摘要:(1)offsetWith & offsetHeight 用来获取盒子在页面上的实际占有的大小 obj.style.width只能读取或者写入行内样式,对于非行内样式,它无法设置和读取 1.obj.offsetWith 宽 obj.offsetHeight 高 2.obj.style.width 与 阅读全文
posted @ 2018-12-12 14:22 天天向上吧 阅读(345) 评论(0) 推荐(0)
摘要:Javascript中字符串对象有一个方法replace(),它的作用非常强大。这里把它的用法整理一下。 一、方法简介 该方法的签名是:replace([RegExp|String],[String|Function])。 该方法 返回一个新的字符串,但并不改变字符串本身。 该方法接收2个参数,第一 阅读全文
posted @ 2018-11-17 01:11 天天向上吧 阅读(4220) 评论(0) 推荐(1)
摘要:这里举2个小案例,供大家参考闭包在实际中的用处。 案例1.获取容器中每一个div的序号 (1)网页运行界面如下: (2)HTML结构如下: (3)传统的做法 这个做法的思路就是在for循环时,先给每个div DOM元素添加一个属性index,这样就把当前盒子的序号记录到了DOM元素的属性上。 (4) 阅读全文
posted @ 2018-10-18 15:47 天天向上吧 阅读(1800) 评论(0) 推荐(0)
摘要:在学习前端的过程中,不可避免的要学习到js闭包这个知识点,很多朋友感到对闭包很难理解,也不清楚它有什么用。本文就详细介绍一下闭包,并通过几个小例子来说明下闭包的用处。 一、闭包的概念 闭包的英文单词是Closure,我先给闭包可以这样下个简单的定义,这个定义不是官方的,是我自己理解的。 定义:如果在 阅读全文
posted @ 2018-10-18 15:41 天天向上吧 阅读(1117) 评论(0) 推荐(0)
摘要:一、问题的提出 我们都知道,js是一个解释型的语言,js代码在运行时,是按照js在文档中出现的先后次序,依次逐条语句执行的。那么问题来了。我们看下面这个小例子 <script type="text/javascript"> f1(); function f1(){ console.log('执行了函 阅读全文
posted @ 2018-10-09 10:11 天天向上吧 阅读(503) 评论(0) 推荐(0)
摘要:函数是js中最复杂的一块内容,其中call() 和 apply()又是重灾区,初学者往往在这个坑里栽倒,这次来分析这2个函数对象的成员 一、函数的角色 在js的体系下,js有3种角色。分别是普通函数、构造器、对象。 1.普通函数 这里声明的f1,它的角色就是个普通函数 2.构造器 这里声明的Pers 阅读全文
posted @ 2018-09-27 11:42 天天向上吧 阅读(290) 评论(0) 推荐(0)
摘要:一、js没有块级作用域 在强类型语言中都有块级作用域,例如,有如下C#代码 这样的代码是无法通过编译的,因为循环变量i是一个局部变量,它的作用域范围只在for循环的大括号{}之内,出了这个大括号就不是i的作用域了,所以Console.WriteLine(i); 这条语句就不能编译通过了。 但如果这样 阅读全文
posted @ 2018-09-25 20:38 天天向上吧 阅读(497) 评论(0) 推荐(0)
摘要:一、Function对象及其原型对象 Function对象是js中一个非常重要的对象,所有通过function关键字声明的函数,本质上都是由Function这个特殊的构造器对象创建出来的,也就是new出来的。 首先要明确的一点就是,在JS中万物皆对象,所以函数本身也是对象,只不过函数对象比较特殊,比 阅读全文
posted @ 2018-09-24 22:49 天天向上吧 阅读(1160) 评论(0) 推荐(0)
摘要:一、伪数组基本概念 伪数组(类数组):顾名思义,就是不是真实的数组,无法直接调用数组方法或期望length属性有什么特殊的行为,但仍可以像遍历数组那样来遍历它们,所以叫伪数组。伪数组本身是个对象,这个对象是形如如下代码的结构: 二、伪数组的特点 三、典型的伪数组对象 四、伪数组转化为真数组 可以使用 阅读全文
posted @ 2018-09-18 07:52 天天向上吧 阅读(474) 评论(0) 推荐(0)
摘要:对于学习JavaScript来说,__proto__和prototype的区别是个绕不开的话题。本文就试图从它们的根本上说清楚它们是什么,又有什么区别,所以本文会从JavaScript的对象开始说起,以其能把本文的主题说透彻。 一、Javascript的对象创建方法 大家都知道,在JavaScrip 阅读全文
posted @ 2018-07-28 18:17 天天向上吧 阅读(768) 评论(0) 推荐(0)
摘要:在前端开发中,正则表达式是一大利器。所以我们这次就来讨论下match()方法。 match本身是JavaScript语言中字符串对象的一个方法,该方法的签名是 match([string] | [RegExp]) 它的参数既可以是一个字符串,也可以是一个正则表达式。该方法绝大多数都是要使用正则表达式 阅读全文
posted @ 2018-07-27 01:31 天天向上吧 阅读(37246) 评论(1) 推荐(3)