【前言】:
首先记录一下自己的心情,之前第一次学习的时候,心态大概就是这样的——JS不就是var ~ var ~ var ~ 么,后来学习了vue , 牵扯出了很多JS高级知识点,让我突然觉得JS是一门有深度的语言,后来在工作中偶然有时间研究公司自封的JS文件,发现其实自己一直多写了很多代码,一个控件假如写好相应的id , 那么一些其他的属性就会被自动设置,这大大提高了开发的效率 , 一个开关就配好属性了 ,所以想着重新来学习一下JS。
还有——那本红宝书《JavaScript高级程序设计》让我学到了很多知识,也在反思自己的学习方式,纸质书上记录的内容不一定比视频少,好多知识感觉书上讲的非常透彻,甚至比视频涉猎面还要广泛~~~!
【本周内容】:
【JS浮点运算并不精确】:
这一点红宝书也有提到,但是自己却是不知道,记录一下;
var e = 0.1 + 0.2;
console.log(e); // 0.300000000000004
【&&妙用】:
前面写根据ID拿到相应的空间 && 后面跟上一个三目运算符。 //这样如果有布置相应的固定id名字的控件就会执行三目运算符里的表达式;
//作用————可以给控件做一个初始化操作。
[非布尔的与或运算]:
【 && 】:
只要第一个是true , 必定返回第二个值(不论第二个值是否为true )!!!
如果第一个值是false , 则直接返回第一个值!!!
var a = true && true ;
console.log(a); //true
var b = 1 && 2;
console.log(b); //2
var c = 666 && 1;
console.log(c); //1
var d = 888 && 0;
var e = 0 && 888;
console.log( d ); //0
console.log( e ); //0
console.log( 888 && 0 ); //0
console.log( !!(888 && 0) ); //false
console.log( NaN && 0 ); //NaN
console.log( 0 && NaN ); //0
【 || 】:
如果第一个是true , 直接返回第一个值 ;
如果第一个值为false , 则返回第二个值 ;
var a2 = true || true ;
console.log(a2); // true
var b2 = 1 || 2;
console.log(b2); // 1
var c2 = 666 || 1;
console.log(c2); // 666
var d2 = 0 || NaN;
var e2 = NaN || 0;
console.log( d2 ); // NaN
console.log( e2 ); // 0
var result="" || "hello";
console.log( result ) //hello