
JavaScript
JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。
邬羽
会写一点点代码。
展开
-
JavaScript:for循环中使用var、let定义变量的区别
for 语句用于创建一个循环,它包含了三个可选的表达式,这三个表达式被包围在圆括号之中,使用分号分隔。 for(){},整体是一个块级作用域。 使用以下代码举例: for(var i = 1;i<=3;i++){ setTimeout(function(){ console.log('for——var',i); },1000) } 此时会产生两块作用域, 第一层:for循环 第二层:定时器,每隔一秒执行一次 使用var的情况: var是全局声明变量, 定时器内打印..原创 2020-10-27 14:27:23 · 1696 阅读 · 0 评论 -
JavaScript:浅谈函数调用call()、apply()、bind()
立即调用(call now) 在 javascript中,call和 apply都是为了改变某个函数运行时的上下文(context)而存在的,换句话说,就是为了改变函数体内部 this 的指向。 JavaScript 的一大特点是,函数存在「定义时上下文」和「运行时上下文」以及「上下文是可以改变的」这样的概念。 区别:作用一样,接受参数的方式不一样 其中 this 是你想指定的上下文,他可以是任何一个 JavaScript 对象(JavaScript 中一切皆对象),call 需要把参数按顺序传递进去,而原创 2020-10-23 17:19:33 · 673 阅读 · 0 评论 -
ES6:class
class: 类相当于实例的原型, 所有在类中定义的方法, 都会被实例继承。 static静态方法的使用: 如果在一个方法前加上static关键字, 就表示该方法不会被实例继承, 而是直接通过类来调用, 这就称为“ 静态方法”。 注意父类的静态方法,也会被子类继承 举个栗子: class Phone{ constructor(brand,price) { this.brand = brand; this.price = price; } // 方法必须要使用该语法,不能使用ES5的对象完原创 2020-07-20 13:45:16 · 170 阅读 · 1 评论 -
ES6:箭头函数的基本了解
箭头函数,始终指向函数声明时所在作用域下this的值 function getName(){ console.log(this.name) } let getName2 = ()=>{ console.log(this.name) } window.name = '大脸猫'; const obj = { name:'蓝猫' } getName.call(obj) // 蓝猫 getName2.call(obj) // 大脸猫 ...原创 2020-07-15 14:30:07 · 227 阅读 · 0 评论 -
JavaScript Map()与 Set()的理解和使用
一Map和SetMapSet()数组去重 Map和Set Map和Set是ES6标准新增的数据类型,请根据浏览器的支持情况决定是否要使用。 Map Map是一组键值对的结构,具有极快的查找速度。 举个例子,假设要根据同学的名字查找对应的成绩,如果用Array实现,需要两个Array: var names = ['Michael', 'Bob', 'Tracy']; var scores = [95...原创 2020-03-30 15:53:39 · 1309 阅读 · 0 评论 -
JavaScript——鼠标移入移出事件
onmouseenter / onmouseleave 和 onmouseover / onmouseout的关系 onmouseenter 类似 mouseover,它们两者之间的差别是 mouseenter 不会冒泡(bubble) 对于深层次结构,发送的mouseenter事件数量可能非常大并且会导致严重的性能问题。在这种情况下,最好是监听鼠标悬停事件。(可使用chrome开发者工具选项...原创 2020-01-03 13:20:22 · 2037 阅读 · 0 评论 -
JavaScript —— 与或运算符 || 的使用
与或运算符||的使用举个栗子,如果遇到以下场景&&|| 举个栗子,如果遇到以下场景 用户等级1,显示1级;2,显示2级,以此类推 用代码实现如下 使用if else const level_text = 1; if(user_level == 1){ level_text = '1级'; } else if(user_level == 2){ level_tex...转载 2019-12-04 14:04:17 · 892 阅读 · 0 评论 -
JavaScript类型转换整理
在 JS 中类型转换只有三种情况,分别是: 转换为布尔值 转换为数字 转换为字符串 原始值 转换目标 结果 number boolean 除了0、-0、NaN都为true string boolean 除了空字符串都为true undefined、null boolean false numer string 1 => ‘1’ array string [...原创 2019-08-04 22:04:35 · 148 阅读 · 0 评论 -
JavaScript —— 声明函数的3种方法
函数是一段可以反复调用的代码块。函数还能接受输入的参数,不同的参数会返回不同的值。 1、function 命令声明函数 function print(s) { console.log(s); } 2、变量赋值 var print = function(s) { console.log(s); }; 采用函数表达式声明函数时,function命令后面不带有函数名。如果加上函数名,该函...转载 2019-05-08 15:07:53 · 1324 阅读 · 0 评论 -
JavaScript —— 字符串和数字转换
JavaScript字符串转换成数字补充:JavaScript字符串转换数字,方法主要有三种转换函数强制类型转换利用JavaScript变量弱类型转换JavaScript数字转换成字符串JavaScript数字与字符串的区别 JavaScript字符串转换成数字 将字符串转换成数字,得用到parseInt函数。 parseInt(string) : 函数从string的开始解析,返回一个整数。 ...转载 2019-03-26 10:26:00 · 466 阅读 · 0 评论 -
Javascript——浅谈JS中的事件循环(Event Loop),同步和异步执行模式
Javascript语言的执行环境是"单线程"(single thread)。 所谓"单线程",就是指一次只能完成一件任务。如果有多个任务,就必须排队,前面一个任务完成,再执行后面一个任务,以此类推。 这种模式的好处是实现起来比较简单,执行环境相对单纯;坏处是只要有一个任务耗时很长,后面的任务都必须排队等着,会拖延整个程序的执行。常见的浏览器无响应(假死),往往就是因为某一段Javasc...转载 2019-03-15 13:37:47 · 1728 阅读 · 0 评论