JavaScript 中有两个用于判断两个值相等的符号:==
和 ===
。分两种情况来考虑:基本数据类型和对象。
基本数据类型
对于基本数据类型而言,===
直接比较两个基本数据类型的值是否相等,不做类型转换,==
会试图进行类型转换再比较。
1 | const s1 = '1' |
JavaScript 中有两个用于判断两个值相等的符号:==
和 ===
。分两种情况来考虑:基本数据类型和对象。
对于基本数据类型而言,===
直接比较两个基本数据类型的值是否相等,不做类型转换,==
会试图进行类型转换再比较。
1 | const s1 = '1' |
计算机科学中有个概念,叫做求值策略 Evaluation Strategy。它决定了变量之间,函数的实参与形参之间,值是如何传递的。求值策略主要有以下两种:
按值传递和按引用传递。
按引用传递会使函数调用的追踪更加困难,有时也会引起一些微妙的 BUG。按值传递由于每次都需要克隆副本,对一些复杂类型,性能较低。两种传值方式都有各自的问题。首先明确一点,在 JavaScript 中,不存在按引用传递。那么,是不是 JavaScript 中,变量之间,函数形参与实参之间都是按值传递呢?这是一个有些争议的问题,可以近似认为,JavaScript 中的值都是按值传递。下面分基本类型的值和引用类型的值两种情况来看。
维基百科对同源政策的定义。简单来说,为了保护用户的数据安全,浏览器规定,对于不同源的网页,它们之间以下的资源交互行为是被禁止的:
Cookie
, LocakStorage
, IndexDB
DOM
无法获取AJAX
请求不能发送仔细想想,以上 3 种行为对于用户安全来说,都是非常危险的。持久化数据通常含有用户的身份信息、登录态信息;至于 DOM
和 AJAX
这两者的权限都可能导致网页被植入恶意代码。
如果说两个网页同源,是指以下 3 个部分都相同:
举例来说,http://www.example.com/dir/page.html
这个网址,协议是 http://
,域名是 www.example.com
,端口是 80
(默认端口可以省略)。它的同源情况如下。
生活美学大师的 5 个锦囊,让你告别无趣的生活.
不仅可以提升生活的乐趣,还能提升你的观察能力,总结分析能力。这种做法不是为了争强好胜,而是为了给生活加点调料,增加乐趣。
比如,你可以尝试自己的排名。身边的十大美食,十大书籍,十大电影,十大当地景点等。
在阳台上加一盆自己喜爱的盆栽也是一点改变.
第二天感恩是一个泛指,别人给你推荐了一本好书,或者旅行回来给你带了点小零食,在过了几天或一段时间后,你觉得不错甚至受益匪浅,那么要把这份美好的心情和感激告诉别人。这同时可以增加我们自己的生活乐趣,维持一种好的社交氛围。
有一个人以前一直害怕坐飞机,后来每次坐飞机都将自己想象成飞行员,以此来克服恐惧心理。
在街上,通过车窗玻璃,商场镜子等,不时的照照镜子,给自己一个正面、积极的心理暗示。
书籍:《非常非常好》
作者:松浦弥太郎
Sass 是 CSS 的一个扩展,它使得 CSS 的使用更加优雅和强大
Sass 的以下特性使得 Sass 成为一个成熟、稳定、强大的 CSS 扩展语言解析器。
在 Sass 中,使用 $
前缀符号来表明这是一个变量。同时,变量是存在作用域的。
1 | $highlight-color: #f90; |
变量可以引用另一个变量
1 | $highlight-color: #f90; |
摘录一篇关于写日志的文章。
写日记是可以加快你的个人成长速度的最简单而又最强大的工具之一。把你头脑中的想法写出来,能让你得到不这样做所无法获得另一种看待事物的视角。
虽然你的大脑可以同时处理许多信息,但你清醒地思考时却做不到。思绪是一个接着一个出现的,是一个序列。一个想法激发下一个想法,如此往复。有时这些序列会产生一些分支,但它们仍然受时间线的限制,在任何给定的时刻,你都追随着这些分支思绪中的一个。这些思绪序列都有一个开始,一个发展,和一个结束,当你陷在一个思绪系列中重复回想这些想法时,要想理清思路是近乎不可能的。
在这个方面,写日记便能给你提供巨大的便利。写日记可以让你从思维序列中解放出来,让你以一个鸟瞰你的想法的视角去审视你的想法。当把你的序列思维复制在一种有形的介质中,你就可以回过头来以一个旁观者的身份回顾这些想法。但当你在复制这些想法时,你仍处于第一人称模式之中。而当你回顾它们的时候,你就能以客观的而非主观的视角看待它们。这种客观的视角,再加上你从主观视角中学到的东西,能让你更进一步地看清你所面对的处境。
下面是写日记的另外 3 种好处: