java idea离线安装 Zookeeper安装 TCP连接 劝酒文化 join 郑州网络 git视频教程 jq绑定click事件 jquery遍历元素 jquery延时 jquery清除子元素 abaqus是什么软件 增删改查sql语句 linux管道符 office配置进度 matlab区分大小写吗 java取绝对值 android网络请求 docker保存镜像 python调用函数 java基础代码 java索引 java线程死锁 java接口调用 java绝对值 swing布局 ** 销售单打印软件 销售单软件 电视免费软件 免费的视频剪辑 maxtoc4d 识别音乐的软件 王者荣耀自动刷冒险 电脑cmd命令大全 js字符转数字 小米游戏鼠标 骰子牛牛怎么玩 手工画像
当前位置: 首页 > 学习教程  > 编程语言

重温前端之类型判断与类型转化

2020/8/11 18:49:49 文章标签:

类型判断

typeof

  • 用法:typeof(xxx)
  • 返回值:返回除null外的 7 种基本类型,外加function共 8 种
  • 特殊点:null被 js 判断为object

instanceof

  • 用法:xxx instanceof OBJ
  • 返回值:返回目标对象(左)的原型链上是否存在 OBJ(右),true/false
  • 特殊点:只用于检验对象,检验简单类型时无效

Object.prototype.toString.apply()

  • 用法:Object.prototype.toString.apply(xxx)
  • 返回值:基本数据类型加 js 中的原生对象
  • 特殊点:不能检测自定义的对象,自定义的 class 将返回 function

类型转化

转为Number

  • string
>  若字符串整体可以识别为一个数字,则返回该识别
>  若不能识别为数字,则返回 `NaN`
>  可以识别 `Infinity`
>  字符串为空或者为空字符串时,返回 0
>  使用`parseInt()`进行转化时,直接从开头开始截取能识别的字符串,直到不能识别为止
>  `Object`在下方单独说明
  • boolean中,false返回0true返回1
  • null返回0
  • undefined返回NaN

转化为String

  • numberbooleannullundefined将原封不动的转化为带引号的字符串
  • Object在下方单独说明

转化为Boolean

  • 0undefinednull""NaN 将被转为 false,其他均为 true

转化为对象

  • nullundefined进行转化将抛出错误
  • 其他型进行转化会返回包装后的对象

Object转化为String/Number

转为 String:toString()

  • toString()流程,如果它返回一个原始值,将这个原始值转换为字符串返回,若不为原始值,则以相同流程执行 valueOf(),若都不为原始值,抛出错误
  • Object返回"[object Object]"
  • Array返回this.join()的值
  • Function返回整个函数字符串

转为 Number:valueOf()

  • valueOf()流程,如果它返回一个原始值,将这个原始值转换为字符串返回,若不为原始值,则以相同流程执行 toString(),若都不为原始值,抛出错误
  • Object返回对象本身
  • Array返回数组本身
  • Function返回方法本身

隐式类型转化

算数运算符(+ - * / ++ %...)

  • +时,若两边存在字符串,则另一个也会转化为字符串,进行字符串拼接
  • 其他情况,均转为Number

关系运算符(> < == !=...)

  • ===/!==时,不进行转化
  • !时,转化为boolean
  • 其他情况,均转为Number

本文链接: http://www.dtmao.cc/news_show_100026.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?