每日思考(2020/03/24)
Posted ericzlin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每日思考(2020/03/24)相关的知识,希望对你有一定的参考价值。
题目概览
- 请写出唤醒拔打电话、发送邮件、发送短信的例子
- 如何消除transition闪屏?
- 对js隐式类型转换的理解
题目解答
请写出唤醒拔打电话、发送邮件、发送短信的例子
<a href="tel:176xxxxxxxx">一键拨打号码</a>
<a href="mailto:hzl@163.com">一键发送邮件</a>
<a href="sms:176xxxxxxx">一键发送短信</a>
如何消除transition闪屏?
.css {
-webkit-transform-style: preserve-3d;
-webkit-backface-visibility: hidden;
-webkit-perspective: 1000;
}
对js隐式类型转换的理解
-
等于判断:是会去先转为相同数据类型,再判断的。Array -> String -> Number -> Boolean 有顺序的
0 == ‘0‘; // true,转为 0 == 0 0 == []; // true,转为 0 == ‘‘ 再转 0 == 0 ‘0‘ == []; // false,转为 ‘0‘ == ‘‘ ‘0‘ == true // false,转为 0 == true 再转 false == true
-
大小判断:也是要先转为相同数据类型再比较的
‘1‘ > ‘-1‘; // true,实则为 1 > -1,反例 ‘1‘ > ‘1.1‘ 为 false ‘a‘ > ‘A‘; // true,实则为 97 > 65,反例 ‘a‘ > ‘b‘ 为 false ‘a‘ > -1; // false,这里不知是不是转成了 NaN > -1 ‘a‘ > ‘‘; // true,这个也不知是不是 97 > undefined [-1] > 0; // false,实为 -1 > 0 [-1] > ‘‘; // true,实为 ‘-1‘ > ‘‘
-
undefined、null 和 NaN
undefined == undefined; // true undefined <= undefined; // false,怀疑是 0 <= undefined 在比较 null > 0; // false null == 0; // false null >= 0; // true NaN > -1; // false,NaN 基本无法被比较 NaN == NaN; // false
-
入参类型转换:比如 Number 和 Math 相关的方法,都会进行数字化转化等
-
运算时类型转换
+‘ 014‘ // 14 +‘0x12‘ // 18 1 + ‘14‘ // ‘114‘ 1 + ‘0x12‘ // ‘10x12‘ 1 + +‘14‘ // 15 ‘14‘ + 1 // ‘141‘ 1 + [1, 1]; // ‘11,1‘ 1 + {}; // ‘1[object Object]‘ 1 + null; // 1 1 +undefined; // NaN ++‘14‘ // ReferenceError Infinity+Infinity; // Infinity -Infinity+(-Infinity); // -Infinity Infinity+(-Infinity); // NaN +0+(+0); // 0 (-0)+(-0); // -0 (+0)+(-0); // 0
以上是关于每日思考(2020/03/24)的主要内容,如果未能解决你的问题,请参考以下文章