js
三斤木
一个脑子里有浆糊,不叨不快活的人
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【笔记】eval
(function f() { 'use strict'; //严格模式 eval('var foo = 123'); //严格模式下,eval内部声明的foo变量,不会影响到外部 console.log(foo); })() (function f() { 'use strict'; var foo = 1; eval('foo = 2'); console.log(foo); //打印出来2,eval在严格模式下可以读写当前作用域的变量 })() var a = 1;原创 2022-05-30 00:40:38 · 144 阅读 · 0 评论 -
【笔记】布尔运算符要点
取反运算符 !后返回true有以下几种情况 !undefined !null !0 !false !NaN !‘’ 连续取反,等同于Boolean(),如!!x 且运算符 计算:第一个运算子 && 第二个运算子 第一个运算子如果是true, 返回第二个运算子的值 第一个运算子如果是false, 返回第一个运算子的值, 不再对第二个运算子求值。 这种只通过第一个表达式的值,控制是否运行第二个表达式的机制, 被称为“ 短路”(short-cut) 或运算符 计算:第一个运算子 || 第原创 2022-05-30 00:40:09 · 224 阅读 · 0 评论 -
【笔记】比较运算符要点
特点: 可以比较各种类型的值 返回布尔值 非相等运算符 与原始类型值对比(数值、字符串、布尔值、null、undefined) 字符串:按照字典顺序(实际上是Unicode码点)比较 其余原始类型值:先转为数值再比较 与对象对比:对象会先转为原始类型的值,再比较 与NaN对比:返回false 相等运算符 === 严格相等运算符: 判断值是否相等,判断类型是否相同(对于复合类型,判断是否引用了同一个内存地址) !== 严格不相等运算符:先计算严格相等运算符的结果,返回相反值 严格相等运算原创 2022-05-30 00:39:51 · 204 阅读 · 0 评论 -
【笔记】算术运算符要点
按照不同的数据类型,运算可分为以下几种情况: 数值+数值:纯粹的数学计算,如1+1=2 数值+字符串 / 字符串+数值:加法运算符遇到字符串,会执行“连接”操作。如1+‘a’=1a // 加法运算符 // 从左到右的运算次序,字符串的位置不同会导致不同的结果:相加或者连接。这种不同的语法行为,叫做“重载”(overload) '3'+4+5 // 345 3+4+'5' // 75 // 减法、乘法、除法运算符都是把数据转为数值后,再计算 数值+对象:对象会先转为原始类型的值,再执行“连接”操作原创 2022-05-30 00:39:30 · 204 阅读 · 0 评论 -
【笔记】数组要点
// 定义数组 // 定义数组的同时进行赋值,也可以不赋值,如var arr = [] // 数组可以放入任何类型的数据:对象,数组,函数 var arr1 = ['a','b']; var arr2 = [[1,2],[3,4]]; //多维数组,第一个数组组成第一行的数据,第二个数组是第二行的数据 // 读取数组长度:等于数组最大的数字键+1 arr.length // 设置数组长度(数组长度最多2^32-1) arr.length = 1; // 清空数组: 设置数组长度为0 arr.lengt原创 2022-05-30 00:38:48 · 211 阅读 · 0 评论 -
【笔记】闭包要点
function f1() { var b = 999; //999是局部变量,在函数作用域生效 function f2() { console.log(b); //链式作用域结构,可读取父级的变量 } return f2; } f1(); //返回的是一个函数 var re = f1(); //将返回的f2函数赋给re re(); //执行re函数 ...原创 2022-05-30 00:38:11 · 155 阅读 · 0 评论
分享