zoukankan      html  css  js  c++  java
  • js 的隐式转换与显式转换

    隐式转换
     
    1.undefined与null相等,但不恒等(===)
    2.一个是number一个是string时,会尝试将string转换为number
    3.隐式转换将boolean转换为number,0或1
    4.隐式转换将Object转换成number或string,取决于另外一个对比量的类型
    5.对于0、空字符串的判断,建议使用 “===” 。
    6.“==”会对不同类型值进行类型转换再判断,“===”则不会。它会先判断两边的值类型,类型不匹配时直接为false。
    undefined == null;  // true   
    1 == true;  // true  
    2 == true;  // false  
    0 == false;  // true
    0 == '';  // true   
    NaN == NaN;  // false  NaN不等于任何值
    [] == false;  // true  
    [] == ![];  // true
    '6' - '3'  // 3
    1234 + 'abcd' // "1234abcd"

    显示转换

    显示转换一般指使用Number、String和Boolean三个构造函数,手动将各种类型的值,转换成数字、字符串或者布尔值。

    Number:

    Number('1234') // 1234
    Number('1234abcd') // NaN
    Number('') // 0
    Number(true) // 1
    Number(null) // 0
    Number(undefined) // NaN
     
    String:
     
    String(1234)  // "1234"
    String('abcd')  // "abcd"
    String(true)  // "true"
    String(undefined) // "undefined"
    String(null)  // "null"
    Boolean:
     
    Boolean(0)  // false
    Boolean(undefined)  // false
    Boolean(null)  // false
    Boolean(NaN)  // false
    Boolean('')  // false
  • 相关阅读:
    windows下nginx的安装及使用
    JAVA面试经历
    项目框架搭建
    383. Ransom Note
    Add to List 349. Intersection of Two Arrays
    171. Excel Sheet Column Number
    463. Island Perimeter
    669. Trim a Binary Search Tree
    496. Next Greater Element I
    637. Average of Levels in Binary Tree
  • 原文地址:https://www.cnblogs.com/missya/p/11040544.html
Copyright © 2011-2022 走看看