【JavaScript】02-js变量及数据类型

02-js变量及数据类型

变量

javascipt是弱类型语言,定义变量时无需指定具体类型。

控制台打印
console.log("i=" + 1);
全局变量:
    var i = 1;
    var name = "张三";
    
    //es6提供了两个新指令:let const,用来代替var
    
    {
        var j = 2;//全局变量
        console.log(j);
    }
    console.log(j);
    
    {
        let z = 3;//局部变量
        console.log(z);
    }
    console.log(z);//报错,显示未定义
    
    {
        const y = 4;//常量
        //y = 5;//显示是常量,不让改变
        console.log(y);
    }
    console.log(y);//报错显示,未定义

数据类型

值类型(基本类型):
    number:数字
    string:字符串
    boolean:布尔类型
    null:空值
    undefined:未定义
    symbol:独一无二的值(es6新引入的原始数据类型)

引用数据类型:
    Object对象
    Array数组
    Function函数
let num = 123;
console.log(typeof num);//number

let  str = "hello js";
console.log(typeof str);//string

let bool = true;
console.log(typeof bool);//boolean

let a;
console.log(typeof a);//undefined

//null是undefined的父类型
console.log(a == undefined);//true
console.log(a == null);//true
console.log(undefined == null);//true

//弱相等和强项等
let v1 = "123";
let v2 = 123;
console.log(v1 == v2);//true,弱相等,只比较数据内容,不比较数据类型
console.log(v1 === v2);//false,强相等,比较数据内容和数据类型

//判断是否不是数字
let v3 = 123;
let result = isNaN(v3);//is not a number
console.log(result);//false

js是弱类型语言,在定义变量时无需确定数据类型,在给变量赋值后,会自动确定数据类型。

数据类型的转换

console.log(Number("123"));
console.log(Number("abc")); // NaN
console.log(Number("+123"));
console.log(Number("-123"));
console.log(Number("12.3"));
console.log(Number("666abc")); // NaN
console.log("====================================");

console.log(Boolean(0)); // false
console.log(Boolean(1)); // true
console.log(Boolean(10)); // true
console.log(Boolean(-10)); // true
console.log(Boolean("0")); // true
console.log(Boolean("1")); // true
console.log("====================================");

sout(parseInt("666"));
sout(parseInt("666.8")); // 转为整型
sout(parseInt("+666"));
sout(parseInt("-666"));
sout(parseInt("666abc"));
sout(parseInt("666元")); // 获取数字部分
sout(parseInt("666元5角"));
console.log("====================================");

sout(parseFloat("666"));
sout(parseFloat("666.8"));
sout(parseFloat("666.8元"));
sout(parseFloat("-666.8元"));
sout(parseFloat("-666.8888888"));
sout(parseFloat("666.888.888.8"));
console.log("====================================");

// 补充:四舍五入保留小数
let num1 = 123.65678;
sout(num1.toFixed());
sout(num1.toFixed(2));
sout(num1.toFixed(3));
sout(num1.toFixed(10));
sout(typeof num1.toFixed(10)); // string

function sout(a) {
	console.log(a);
}
			
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JeffHan^_^

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值