<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script>
/*
* 变量
* */
//以下是只声明了变量,并没有初始化(未赋值,没有=)
var small;
//输出到控制台用如下语法console.log
console.log(small);//变量没有初始化先使用了一次,输出small变量,此时是undefinde
//以下是初始化赋值了
small = 10;
console.log(small);//变量此时初始化了,再使用一次,输出small变量,此时是10
//下面是声明变量+初始化
// 单等(=)是赋值,已经初始化了
var a = 1;//数字类型
var b = 'abc';//字符串类型
var c = undefined;//未定义类型
var d = true;//真假类型
var e = {};//对象型
var f = function () {
}//函数类型
var g = null; //null 值 空值引用,null返回的是objec
var h = [];//数组型,返回对象也是object
console.log(a, b, c, d, e, f, g);//一次性输出上面的多个变量
//如何检测变量的数据类型 typeof
console.log(typeof a); //number
console.log(typeof b); //string
console.log(typeof c); //undefinend
console.log(typeof d); //boolean
console.log(typeof e); //object
console.log(typeof f); //function
console.log(typeof g); // object,null返回的是objec
console.log(typeof h); // object,数组型,返回对象也是object
//VAR A=10; 错误的,使用了大写错误
//声明多个
//同名变量 虽然有就近原则(如果就近变量没有初始化,值还是上面的值,并没有被覆盖)
var a, b, c = 20;
console.log(a, b, c);
var a = 1, b = 2;
//变量声明提前
console.log(window.price);//在下面声明的price,在前面就已经可以用了,输出undefined
//在你声明之前我就已经有price这个属性了,只是没有赋值
var price = 100;
console.log(price);
console.log(window.price);
//price成了window的属性可以写成(window.price)
//装箱:值类型转化为引用类型
var str = "abcd";//是字符串类型,即值类型
var nstr = new String(str);//把值类型加入,转换为引用类型 String大类,是字符串的大类
console.log(nstr);
console.log(typeof nstr);//输出类型为object,即为对象型,引用类型
//拆箱:引用类型转为值类型
console.log(nstr.toString());//输出结果为值类型:abcd
console.log(typeof nstr.toString());//输出结果为值类型
var num = new Number(10);//Number数字的大类
console.log(typeof num);//值类型转化为了引用类型
console.log( num);
console.log(typeof num.toString());//转换为值类型string
//parseInt 将字符串的数字转整形数字
console.log(parseInt(num.toString()));//转换为值类型
console.log(parseInt("100.9"));//转换为值类型,不包含小数点
console.log(parseFloat("100.9"));//转换为值类型,包含小数点
</script>
</body>
</html>
声明变量
最新推荐文章于 2023-02-04 15:34:12 发布