JavaScript 布尔对象
  1. console.log(true)
  2. console.log(!true)
  3. var a = 1,b = 2
  4. console.log(!!(a + b))
  5. var b = new Boolean('false')
  6. console.log(b)
  7. // b是一个布尔对象 而不是一个值
  8. // b是一个包含一个true值的对象 可以将b当为一个盒子
  9. // 当作为一个构造函数(带有运算符 new)调用时,
  10. // Boolean() 将把它的参数转换成一个布尔值,
  11. // 并且返回一个包含该值的 Boolean 对象。
  12. // 把一个值装进一个对象的过程叫做 装箱 boxing
  13. // 把值从对象中取出来的过程叫 拆箱 unbonxing
  14. var a = Boolean('111')
  15. console.log(a)
  16. // 如果作为一个函数(不带有运算符 new)调用时,
  17. // Boolean() 只将把它的参数转换成一个原始的布尔值,
  18. // 并且返回这个值。
  19. // 如果参数为null、''、NaN、undefined、0、-0、false这些值的时候 则为false 否则为true
  20. var me = {}
  21. var me2 = new Object()
  22. console.log(!!me)
  23. console.log(!me2)
  24. // 一个空白对象会被认为true
  25. me.name = '李全福'
  26. me.age = 23
  27. me2.name = '王子豪'
  28. me2.age = 23
  29. console.log(!!me)
  30. console.log(!me2)
  31. new Boolean(true//盒子内的值 true
  32. new Boolean(false//盒子内的值 false
  33. new Boolean('false') //true
  34. new Boolean(0) //false
  35. new Boolean(2) //true
  36. new Boolean(null//false
  37. new Boolean(''//false
  38. new Boolean('liquanfu') //true               
  39. if(Boolean(0)){
  40.     console.log('能执行吗?') //false
  41. }
  42. if(new Boolean(0)){
  43.     console.log('能执行吗?') //能执行吗?
  44. }
  45. // 带有false值的一个对象
  46. // 不管布尔对象这个盒子里面装的是true还是false
  47. // 一个布尔对象都会被认为true 因为布尔对象是一个对象
  48. // 布尔对象与布尔值是完全不同的
  49. // 如果你在布尔场景下如if()永远不要使用布尔对象
  50. var str = true.toString()
  51. console.log(str)
  52. console.dir(str)
  53. // 试图对布尔值(包括数值、字符串)等 调用方法时
  54. // 会导致临时装箱 产生新的对象 在这个对象上调用方法
  55. // 方法调用完毕 对象即会消失
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇