4.typeof,类型转换

typeof,类型转换

数组

var arr = [1,2,3,45,5,"abc",undefined];

console.log(arr[0]);                        //打印第0位
console.log(arr.length);                    //打印数组的长度

结构体

var arr = {
    属性名1 : "字符串",                    //注意用“,”分隔
    属性名2 : 数字,
    属性名3 : underfined,
    属性名4 : false,
}

console.log(arr.属性名);

编程形式的区别

  1. 面向过程:机械的想法,逻辑化思维,按步骤进行(c语言)

  2. 面向对象(java c++)

js即面向过程也面向对象

注:也可以用脚本语言与非脚本语言进行分类

typeof()

用于区别不同的数据类型
用console.log(typeof(变量名));则直接打印变量的数据类型

注:typeof函数中var a = {}; var a= []; var = null;的返回值是object
也可以用typeof 变量名表示typeof函数

类型转换

显式类型转换

  1. Number(变量); 转化为数字变量
    eg:var num = Number(‘123’); //把123转换为数字123,并返回num
    var demo = “123”; //另一种形式
    var num = Number(demo);

注:布尔值true转为数字为1,false为0;null为0,undefined不能转化,变为为NaN,字母也不能转化,变为NaN

  1. parseInt(变量);

    1. parseInt(变量);转化为数字的整形变量(去掉小数点后的数字)
      注:可以转换字符串,但布尔值true和false以及其他则转化为NaN
    2. parseInt(变量,数字);以数字为基底转换为10进制
      注::“数字”被称为radix,取值范围为2-36;且其运行方式为从数字位开始取值,取到非数字位(小数点,字母等)截止
      eg:var demo = “10”;
      var num = parseInt(demo,16);
      console.log(typeof(num) + " : " + num) //输出值为Number:16
  2. parseFloat(变量); 转化数字为浮点数
    注:当其出现非数字位时,只取非数字位前的数字(小数点除外)

  3. String(变量); 转化为字符串(任意值)

  4. Boolean(变量); 转化为布尔值(true和false)
    注:undefined、null、NaN、""(空串)、0、false 转化的布尔值为false,其余变量均为true

  5. toString();

    1. 变量名.toString();
      eg:var demo = “123”;
      var num = demo.toString();
      注:undefined与null不能用该函数转化,但可以用String函数解决
    2. 变量名.toString(数字);以10为基底转化为数字目标进制
      eg:var demo = “10”;
      var num = demo.toString(8);
      console.log(typeof(num) + " : " + num) //输出值为Number:16

隐式类型转换

  1. isNaN(变量); //判断变量是不是NaN,返回布尔值
    注:把变量用Number();函数进行转换,将转化结果与NaN进行比较

  2. “++”,“–”,“+”,“-” (最后两个是一元正负运算符)
    注:

    1. 把变量用Number();函数进行转换再进行计算;
    2. “+”两侧有一个是字符串,则会把非字符串部分链接到字符串部分上
  3. “*”,“/”,“%”
    注:把两侧用Number();进行转换,并对转换结果进行计算

  4. “&&”,“||”
    注:把两侧变量用Boolean();进行转换,并对转换结果进行运算,但返回的值却是变量的值

  5. “>=”,“<=”
    注:有数字则用Number();函数转化后进行比较 ;字符串则是用ASCII进行比较,且可以连续比较
    eg:2 > 1 > 3(返回值为false);3 > 2 > 1(返回值为true)

  6. ”,“!=”
    注:undefined == null 他们两个不等于其他值
    =”,“!==”是不发生类型转换的绝对不等于

注:NaN != NaN ; NaN !== NaN

未定义的变量如果出现在函数中,只有typeof();函数有返回值不报错,且这种情况下返回值为undefined

变量.toFixed(数字);
其用法为,将变量的小数点后“数字”位作为标准,余下部分四舍五入

var num = 123.45678;                        
var demo = num.toFixed(3);                               
var demo == 123.457;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值