设为首页 加入收藏

TOP

JavaScript 语法和数据类型(三)
2019-09-23 11:17:28 】 浏览:111
Tags:JavaScript 语法 数据 类型
;     对象 Object、数组 Array、函数 Function

        Object

            一般是 {},标签的数据类型都是 Object

        Array

            一组“成员”,一般是 []

        Function

       标志是,function

    数据类型转换

     自动类型转换

       转换的规则    

            预期什么类型的值,就调用该类型的转换函数。比如,某个位置预期为字符串,就调用String函数进行转换。如果该位置即可以是字符串,也可能是数值,那么默认转为数值 

            利用算术运算符

console.log(+str);
console.log(str - 0); console.log(str * 1); console.log(str / 1);

        注:如果字符串无法全都转为数字,则会变为 NaN

       利用算术运算符的 +,进行字符串的拼接

    由于自动转换具有不确定性,而且不易除错,建议在预期为布尔值、数值、字符串的地方,全部使用Boolean、Number和String函数进行显式转换

        强制类型转换

   Number

   规则:

       严格转换,能识别小数点,不能出现非数字,出现就会NaN

       空字符串会转为 0

       自动过滤一个字符串前导和后缀的空格

       布尔值:true 转成 1,false 转成 0

       undefined:转成 NaN

       Number方法的参数是对象时,将返回NaN,除非是包含单个数值的数组

   Number方法的参数是对象时,将返回NaN,除非是包含单个数值的数组,如:

转换对象:
Number({a: 1}) // NaN Number([1, 2, 3]) // NaN Number([5]) // 5

   Number 示例:

转换基本数据类型:
//
数值:转换后还是原来的值 Number(324) // 324 // 字符串:如果可以被解析为数值,则转换为相应的数值 Number('324') // 324 // 字符串:如果不可以被解析为数值,返回 NaN Number('324abc') // NaN // 空字符串转为0 Number('') // 0 // 布尔值:true 转成 1,false 转成 0 Number(true) // 1 Number(false) // 0 // undefined:转成 NaN Number(undefined) // NaN // null:转成0 Number(null) // 0

   其他方法:

       parseInt()、parseFolat()、isNaN

   isNaN

isNaN
方法可以用来判断一个值是否为NaN
    isNaN(NaN) // true
    isNaN(123) // false

isNaN(x)
    如果 x 是特殊的非数字值 NaN(或者能被转换为这样的值),返回的值就是 true。如果 x 是其他值,则返回 false
    true  不是一个数字
    isNaN("hello world"); -> true
    false 是一个数字
    isNaN(123); -> false

isNaN只对数值有效,如果传入其他值,会被先转成数值
    isNaN('Hello') // true
    // 相当于
    isNaN(Number('Hello')) // true

isNaN为true的值,有可能不是NaN,而是一个字符串
比如,传入字符串的时候,字符串会被先转成NaN,所以最后返回true

由于 NaN 的意思是 not a numer ,所以isNaN判断时,本身是双重否定,true 也就代表着是 NaN,即不是一个数字

当值是0时,返回的值仍为 true

   String

转换基本数据类型:
数值:转为相应的字符串。 字符串:转换后还是原来的值。 布尔值:true转为字符串
"true",false转为字符串"false"。 undefined:转为字符串"undefined"null:转为字符串"null"
转换对象:
String方法的参数如果是对象,返回一个类型字符串;如果是数组,返回该数组的字符串形式

         其他方法:

    toString()

    方式:直接转换,相当于给数值添加两个引号

var num1 = 123;
var str1 = num1.toString();
console.log(str1); // 123 -> 字符串

var num2 = NaN;
var str2 = num2.toString();
console.log(str2); // NaN -> 字符串

    可以接受参数:

toString(8);  toString(16);  toString(32);  ...

    参数时进制,结果也是以进制表示的数字

     toFixed()

   主要作用是保留小数位,顺带着转变数据类型

var num = 123.456;
var str = num.toFixed(2);
console.log(str); // 123.46  -> 字符串

   保留 n 位小数的时候会自动四舍五入。

   Boolean

   可以将任何类型的值转为 布尔值

   规则:除了以下五个值的转换结果为 false,其他的值全部为 true

undefined
null
0(包含-0和+0)
NaN
""  ''(空字符串

  true 和 false 这两个布尔值不会发生变化  

   所有对象(包括空对象)的转换结果都是true,甚至连 false 对应的布尔对象new Boolean(false)也是true

    注意:"  " 并不是空字符串,看不见的缩进和空格也是字符

java script 运算符 

    算术运算符

+    加法
首页 上一页 1 2 3 4 5 下一页 尾页 3/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇CSS3动画的使用 下一篇css3动画如何解决动画的播放、暂..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目