摘要: js垃圾回收是自动进行的 如果对象是可达的,它一定是存在于内存中的 一组相互连接的对象可能整体都不可达 1 function marry(man,woman){ 2 woman.husband=man; 3 man.wifr=woman; 4 5 return { 6 father:man, 7 m 阅读全文
posted @ 2020-12-08 21:20 呈心者 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 1 var a=1; 2 var b=a++;//b=1,先赋值再自增 3 4 var a=1; 5 var c=++a;//c=2,先自增再赋值 阅读全文
posted @ 2020-12-08 16:43 呈心者 阅读(51) 评论(0) 推荐(0) 编辑
摘要: 函数的执行依赖于变量作用域,作用域是在函数定义时所确定的,而不是在函数调用时确定。 阅读全文
posted @ 2020-12-08 16:32 呈心者 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 高程:有权访问另一个函数作用域中的变量的函数。 MDN:一个函数和对其周围状态(lexical environment,词法环境)的引用捆绑在一起(或者说函数被引用包围),这样的组合就是闭包(closure)。 阮一峰老师: 各种专业文献上的"闭包"(closure)定义非常抽象,很难看懂。我的理解 阅读全文
posted @ 2020-12-08 16:31 呈心者 阅读(414) 评论(0) 推荐(0) 编辑
摘要: 0 null undefined NaN "" 零,空,未定义,非数值,空串。 阅读全文
posted @ 2020-12-08 16:13 呈心者 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 显式转换:特指Number(value) 隐式转换:非显式,比如“/”除号 1 let str="fly"; 2 let n=Number(str); 3 alert("6"/"2"); //3 undefined:NaN null:0 true:1; false:0 string: 纯数字字符串返 阅读全文
posted @ 2020-12-08 16:09 呈心者 阅读(428) 评论(0) 推荐(0) 编辑
摘要: 显示转换:指的就是使用String(value)这种形式。 隐式转换:指的是非隐式转换。 详细情况: 隐式转换: alert 阅读全文
posted @ 2020-12-08 15:49 呈心者 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 表示空。 typeof(null); 返回object,这是历史遗留问题。 阅读全文
posted @ 2020-12-08 15:41 呈心者 阅读(50) 评论(0) 推荐(0) 编辑
摘要: 1 console.log(null==undefined); //结果为true 2 console.log(null undefined);//结果为false 各自的使用场景: null,一般将null写入变量中; undefined,作为已经声明但还没有赋值的变量的初始值。 阅读全文
posted @ 2020-12-08 15:36 呈心者 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 是一个未定义或者不正确的数学操作得出的结果 NaN是粘性的,对于NaN的进一步操作都会返回NaN 阅读全文
posted @ 2020-12-08 15:33 呈心者 阅读(64) 评论(0) 推荐(0) 编辑
摘要: 就是一个值,可以直接使用,表示无穷大。 1 alert(Infinity); //Infinity 2 var v=Infinity; 3 var b=(1/0); //Infinity 阅读全文
posted @ 2020-12-08 13:58 呈心者 阅读(327) 评论(0) 推荐(0) 编辑
摘要: 是一个内置对象,能表示任意长度的整数 number做不到的事儿,由我BigInt来做 能表示大于(253-1)( 9007199254740991)或小于-(253-1) 使用方法: 1 const bi1=999n; 在整数后加n 2 const bi2=BigInt("999");调用函数 3 阅读全文
posted @ 2020-12-08 13:06 呈心者 阅读(407) 评论(0) 推荐(0) 编辑
摘要: let v="fly"; v=100; 不用去想什么动态不动态,还原事物本质就行了。 从v的角度来看: 一开始,v被let声明 v变成了fly v变成了100 从“fly”的角度来看: 我变成了v 我被v抛弃了 v一开始是字符串类型,后来又变成了数值类型,还能变成其他类型。 也就是说v的类型不是被定 阅读全文
posted @ 2020-12-08 11:56 呈心者 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 字母全大写 驼峰命名法 字母全大写: const COLOR_RED="#f00"; 使用“#f00”和使用COLOR_RED是一样一样的,但是我们时常会忘记那种复杂的写法,所以如果能记住一个事物所有的写法,就没必要去定义常量。 我们知道红色就是red,但是不知道还叫“#F00”,为了方便啊,不想老 阅读全文
posted @ 2020-12-08 11:32 呈心者 阅读(144) 评论(0) 推荐(0) 编辑
摘要: const v=5; 不能再给v赋值。 v就代表了5,使用v就相当于在使用5。 阅读全文
posted @ 2020-12-08 11:17 呈心者 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 用户真名:userRealName 第一个单词首字母小写 其余单词首字母大写 第一个单词像骆驼的头,其他单词的首字母像驼峰。 阅读全文
posted @ 2020-12-08 11:09 呈心者 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 变量命名: 首字符不能是数字。字母或者符号美元和下划线($和_) 由字母,数字,美元和下划线组成 大小写不同 可以使用非英文字母 保留字不能用 变量声明: 不严格的时候可以不声明。age=5; 阅读全文
posted @ 2020-12-08 11:04 呈心者 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 是谁在变得严格? 我们编写代码,永远不是随心所欲的,我们只能按照预先设定好的方式去书写代码。 在限制中感受自由,绝对的自由带来的就是绝对的限制。自由总是在条条框框中才显得那么弥足珍贵。 我们书写代码要按照另一种标准来了,而我们已经写好的代码也会被此种标准所处理。 我们在代码的最上方,用英文大喊一声: 阅读全文
posted @ 2020-12-08 10:23 呈心者 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 单行注释:// 双右杠 多行注释:/*...*/ 右杠星和星右杠 注意点:多行注释不能嵌套 使用技巧: Ctrl+/ 热键进行单行注释,诸如 Ctrl+Shift+/ 的热键可以进行多行注释 阅读全文
posted @ 2020-12-08 10:09 呈心者 阅读(30) 评论(0) 推荐(0) 编辑
摘要: 在原先的我看来,分号应该算是非常小的知识点了,可果然不出我所料,一查资料,居然有如此多的关于分号的讨论。 知乎上关于要不要加分号的讨论: 分号之争 明确几点: 有时,分号可以不加。因为有时换行这个动作本身就相当于加了一个分号。 有时,分号必须加。 必须加: 括号 ( 方括号 [ 正则开始的斜杠 / 阅读全文
posted @ 2020-12-08 10:05 呈心者 阅读(3579) 评论(0) 推荐(0) 编辑