zoukankan      html  css  js  c++  java
  • 建议2:注意Javascript数据类型的特殊性---(2)慎用JavaScript类型自动转换

      在JavaScript中能够自动转换变量的数据类型,这种转换是一种隐性行为.在自动转换数据类型时,JavaScript一般遵循:如果某个类型的值被用于需要其它类型的值的环境中,JavaScript就自动将这个值换成所需要的类型

     

      如果非空对象用在逻辑运算环境中,则对象被转换为true.此时的对象包括所有类型的对象,即使值为false的包装对象也被转为true.

      如果把对象用在数值运算环境中,则对象会被自动转换为数字,如果转换失败就返回NaN

      当数组被用在数值运算环境中时,数组将根据不包含的元素来决定转换的值.如果数组为空数组,则转换为数值0;如果数组仅包含一个数字元素,则被转换为该数字的数值;如果数组包含多个元素,或仅包含一个非数字元素,则返回NaN

      当对象用于字符串环境中时,JavaScript能够调用toString()方法把对象转换为字符串再进行相关计算.当对象与数值进行加号运算时,则会尝试将对象转换为数值,然后参与求和运算.如果不能将对象转换为有效数字就执行字符串连接操作.

  • 相关阅读:
    bzoj4598: [Sdoi2016]模式字符串
    bzoj3156: 防御准备
    bzoj1966: [Ahoi2005]VIRUS 病毒检测
    bzoj3170: [Tjoi2013]松鼠聚会
    bzoj3171: [Tjoi2013]循环格
    POJ1068Parencodings
    2013年山东省第四届ACM大学生程序设计竞赛 Alice and Bob
    POJ2632Crashing Robots
    POJ1328Radar Installation
    POJ2586Y2K Accounting Bug
  • 原文地址:https://www.cnblogs.com/chorkiu/p/12071716.html
Copyright © 2011-2022 走看看