开发笔记📐 发现👽 人物👮 趣闻💦
现代Javascript学习笔记 从基础重新认知新的特性和标准

现代Javascript学习笔记 从基础重新认知新的特性和标准
2019-02-26 20:55:40   点击:

笔记2

1. typeof(xxx)和typeof xxx是等价的。

2. null和undefined都是独立类型,typeof(null)返回object,这是一个官方承认的错误——总之记住就好了。

3. typeof(alert)返回function,事实上应该返回object,但是为了方便,函数对象特别的返回了function。

4. 使用Boolean()类型转换时,0,空字符串(""),undefined,NaN都会返回false,特别的,字符串"0"返回true。

5. 运算符会默认将运算参数转换为对应的类型。比如:1+"3"=13。特别的,1+1+"3"="23","2"/"2"=1。

6. 我们可以方便的把+运算符作为数值类型转换符号。

+("987654321") //returns 987654321

7. 赋值语句同样有返回值,默认返回计算值。

console.log(3+(a=1+2)) //6

8. 逗号运算符:依次执行每一个语句,并返回最后的结果。

a=(b=1+1,b*2,2+9) //returns 11

9. 字符串比较大小比较的是unicode编码,并按位数依次比较,知道区分差异。特别的:'a'>'A'。

10. ==与===的区别,==不区分类型。

'1'==1 //true
'1' === 1 //false

11. null>0返回false,null==0返回false,但 null>=0 返回true。因为相等性检测 == 和普通比较符 > < >= <= 的代码逻辑是相互独立的。比较会将两侧转化为数字,所以0>=0,但是undefined和null在==中不会进行任何比较,换句话说,null==undefined,除此之外他们不等于任何值。

12. javascript默认提供的三种模态窗口:alert,prompt,confirm

13. 比较运算符返回boolean值,很多时候我们喜欢书写这样的语句:a=(b>c)?true:false,这种时候可以简写为a=(b>c)。

14. 老生常谈,逻辑运算符的运用:" true && '' && false 返回 '',false || 'test' || 1 返回 'test'。

15. 逻辑运算符不总是返回true|false。

'good' && 'good2' && 'last good' // 'last good'
null || 0 || undefined // undefined

16. 取反运算符的利用:两次取反可以替代Boolean()。

17. alert返回undefined,confirm返回boolean,prompt返回输入值。

18. 代码块如果只有一条语句可以简写到一行省略大括号。

if(a>b) console.log(a)

19. 选择运算符(?)后不支持书写break和continue,请换用if。

20. 为了解决嵌套循环中break和continue不知道跳出到哪一层循环的问题,提供label标签:

outer:while(condition1){
 while(condition2){
  break outer;
 }
}

21. switch case语句的老要求:如果匹配完成后没有break语句,将会默认执行后面的所有语句并不进行case判断。

22. 以下语句意味着两个条件均执行同样的语句:

case a:
case b:
 codes***

23. case语句的匹配是完全匹配,即===,而不是==。

游戏 引擎 unity 学习资料

上一篇:国内互联网前线企业开源项目一览 github地址列表
下一篇:国内可用的常用云CDN静态资源公共库加速服务2019最新列表