javascript this指向总结 this关键字是一个非常重要的语法点。毫不夸张地说,不理解它的含义,大部分开发任务都无法完成。简单说,this就是属性或方法“当前”所在的对象。 那么我们来看看this指向的规则如下: 1. 在全局作用域下,this指向window;this和window的空间地址是一样的; 2. 给元素的事件行为绑定方法,那么方法中的this指向被绑定这个元素; 3. 函数体中的this看函...
javascript 作用域、变量提升练习题 今天我们来做下作用域和变量提升的面试题;答案我会写在最下面,大家先开始自己尝试下//第1题 console.log(a); var a=12; function fn(){ console.log(a); var a=13; } fn(); console.log(a); //第2题console.log(a); v...
javascript 栈内存、堆内存、作用域、变量(变量提升ES5)全面了解之间的关系(1) javascript 栈内存、堆内存、作用域、变量(变量提升ES5)确实是js中比较难懂的只是点。javascript 中有三座大山,学习起来很是吃力。第一座: 作用域和上下文环境第二座: 原型和原型链第三座:单线程和异步,今天我带大家翻越这第一座大山。希望本文能让你对作用域和变量提升有个新的认识在这之前一.先普及下基本知识和下文需要用到的知识点 con...
一张图看懂开源许可协议,开源许可证GPL、BSD、MIT、Mozilla、Apache和LGPL的区别 如何还不知道 开源软件,请移步以下网址了解。http://www.myzaker.com/article/5a78e3a19490cb474100000b/如何为代码选择开源许可证,这是一个问题。世界上的开源许可证,大概有上百种。很少有人搞得清楚它们的区别。即使在最流行的六种----GPL、BSD、MIT、Mozilla、Apache和LGPL----之中做选择,也很复杂。乌克兰程...
HTML标签meta总结,HTML5 head meta 属性整理 前言meta是html语言head区的一个辅助性标签。也许你认为这些代码可有可无。其实如果你能够用好meta标签,会给你带来意想不到的效果,meta标签的作用有:搜索引擎优化(SEO),定义页面使用语言,自动刷新并指向新的页面,实现网页转换时的动态效果,控制页面缓冲,网页定级评价,控制网页显示的窗口等!html的meta总结meta标签的组成:meta标签共有两个属性,它们分别是htt...
经典CSS布局 -- 圣杯布局 & 双飞翼布局 按照我的理解,其实圣杯布局跟双飞翼布局的实现,目的都是左右两栏固定宽度,中间部分自适应。但在这里实现起来还是有一些区别的【圣杯布局】代码说明:html代码中 middle部分首先要放在container的最前部分。然后是left,right1.将三者都 float:left , 再加上一个position:relative (因为相对定位后面会用到)2.mid...
css实现单行文本和多行文本省略号 单行文本出现省略号的条件:<style> p { width: 200px; /*宽度*/ text-overflow: ellipsis; /*文字以省略号的方式隐藏*/ white-space: nowrap;/*禁止文字内容折行*/ overflow: hidden;/*超出部分溢出隐藏*/ }</style>...
npm 的常用命令技巧 如果你在日常工作流程中使用 NPM ,我相信你会喜欢这些提示和技巧。生成 package.json我们通常执行 npm init,然后开始添加 npm 请求的信息。 但是,如果我们不关心所有这些信息,并且希望保留默认值,那么对于 npm 请求的每一条数据,我们都按 enter 键。为了避免这种情况,你可以输入 npm init -y。这样就可以跳过问题询问了。愚人码头注:你也可以使用 ...
Error: Cannot find module '@babel/core' webpack run dev 问题记录:在进行webpack 命令操作时报错根据提示发现 需要安装 7.0.0以上版本的babel-code因为我的babel-loader 是 8.0.0以上的我默认安装的babel-code 是6.0.0的版版本不匹配解决办法:可以选择降低babel-loader的版本到7.0.0 现在版本如下: 在尝试运行 webpack run dev ...
Jade、EJS、JSHTML、Mustache、Handlebars 五大node模板引擎区别 Here’s my feature matrix I used while comparing. Built into Express Allows logic in templates Encourages logic in templates Reuse templates client side Allows Bootstrap Integration ...
javascript随机打乱数组shuffle javascript 没有为我们提供shuffle打乱数组的函数,那日常开发是怎样实现随机打乱数组呢一.使用sort方法?借助 sort 方法不是真正意义上的完全乱序原因:在Chrome v8引擎源码中,处理 sort 方法时,使用了插入排序和快排两种方案。当目标数组长度小于10时,使用插入排序;反之,使用快排。其实不管用什么排序方法,大多数排序算法的时间复杂度介于 O(n) ...
javascript类数组对象转数组对象的一些技巧 一.定义:什么是类数组对象?拥有length属性,可以通过下标访问;不具备数组所具有的方法常见的类数组有arguments和NodeList,《javascript权威指南》里面给出了一个鉴别对象是否是类数组的函数:// Determine if o is an array-like object.// Strings and functions have numeric le...
npm install http-server global 安装http-server服务器 问题:最近在使用webstrom loaclhost 服务开发项目时,遇到如下问题: 1.无法再局域网内同于ip的方式访问项目 2.在使用chrome的在线编辑自动保存功能的时候经常会出现一个乱码所以选择安装了 http-server 来架设服务器 安装步骤如下:前提:你一定已经安装了Node.js ,如何验证安装了node.js 请在命令行窗口下执行 node -v 如果...
NPM install --save 和 --save-dev 最近在写Node程序的时候,突然对 npm install 的-save和-save-dev 这两个参数的使用比较混乱。其实博主在这之前对这两个参数的理解也是模糊的,各种查资料和实践后对它们之间的异同点略有理解。遂写下这篇文章避免自己忘记,同时也给node猿友一点指引。我们在使用 npm install 安装模块的模块的时候 ,一般会使用下面这几种命令形式: 1 2 ...
JS中不同类型作比较的规律 (比较运算符) JS 不同数据类型的比较 是个头疼事情,那有没有规律可循,让记忆和理解起来更加容易呢,console.log(1 == "1") //true 好的,我先把规则告诉大家,然后大家理解后再开始练习。看看效果是不是很显著;不同数据类型间的比较,规律如下 类型 类型 其他说明 其他说明 对象 对象 比较是不是同一个内存地址 对象 字...
javascript的null、undefined和布尔数据类型 javascript中 有null、undefined 在使用typeof 时候 console.log(typeof null); //objectconsole.log(typeof undefined) //undefinednull与undefined都可以表示“没有”,含义非常相似。将一个变量赋值为undefined或null,老实说,语法效果几乎没区别。两个类型到底...
parseInt parseFloat isNaN Number 区别和具体的转换规则及用法 在javascript 我经常用到,parseInt、parseFloat、Number、isNaN,但是转规则不一,常常搞不清楚区别。记忆起来非常吃力。今天我们来扯一扯他们的区别和用法,和记忆技巧首先,javacript的数据类型number 包含 整数 小数 0 NaN判断一个值是不是数字可以使用 typeof<script> console.log(ty...