每日思考(2020/07/12)
题目概览
- 移动web页面如何自动探测电话号码?
- 什么是浮动和它的工作原理是什么?浮动会引起什么问题?
- js中
=
、==
、===
三个的区别是什么?并说明它们各自的工作过程
题目解答
移动web页面如何自动探测电话号码?
<meta name="format-detection" content="telephone=yes">
什么是浮动和它的工作原理是什么?浮动会引起什么问题?
- 什么是浮动:在做布局的时候用到的一种技术,通过浮动可以让元素左右浮动,然后通过margin调整位置
- 工作原理:使元素脱离文档流,让元素可以左右浮动,直到遇到另一个浮动元素的边缘才停止
- 带来的问题:浮动元素会造成父级元素无法自动获取高度,导致父级塌陷,布局错乱
js中=
、==
、===
三个的区别是什么?并说明它们各自的工作过程
=
是赋值运算符- 它遵循右结合律
- 它返回 lhs (但在声明语句(
var
,let
,const
)中返回undefined
) - 若 rhs 是 primitive value (
number
,string
,symbol
,undefined
,boolean
) 则 lhs 被赋值为该值 - 若 rhs 是 object 则 lhs 被赋值为指向该 object 的 reference
const
声明的不变量不能被再次赋值,否则会 throwReferenceError
- 如果在局部作用域不使用声明语句就给一个既未声明于局部作用域,也未声明于任何上层作用域的变量赋值,那它将会被创建为一个全局变量。不应该如此使用。
==
是带有 implicit type conversion 的判等运算符- 它遵循左结合律
- 它返回
boolean
===
是严格的判等运算符- 它遵循左结合律
- 它返回
boolean
- 若两侧是 primitive value 则判断两侧值是否相等
- 若两侧是 object 则判断两侧 reference 是否指向同一块内存
【转载文章务必保留出处和署名,谢谢!】