JS数据类型

1、不同数据占据的存储空间不同,因此把数据分为不同的数据类型
2、变量的数据类型:JS的变量数据类型是只有程序在运行过程中,根据等号右边的值来确定的
var str=‘pink’ //变量是字符串类型

3、JS是动态语言,同一个变量的数据类型是可以变化的

var x =10;//x是数字型
x='pink';//x是字符串型

4、数字型进制:

//1、八进制数字序列范围:0-7
var num1=07//对应十进制的7
var num2=019;//对应十进制的19
var num3= 08//对应十进制的8

//2、十六进制数字序列范围:0-9以及A-F
var num=0xA
//在JS中前面加0就是十进制,在前面加0x就是十六进制

//3、JS中数字型的最大值
console.log(Number.MAX_VALUE);
console.log(Number.MIN_VALUE);

//4、数字型三个特殊值	
//Infinity 无穷大
console.log(Number.MAX_VALUE*2);

//-Infinity 无穷小
console.log(-Number.MAX_VALUE*2);

//不是一个数值not a number,即NaN
console.log('pink老师' - 100);//控制台输出NaN,即不是一个数字


//isNaN()方法用来判断一个变量是否为非数字的类型,返回true 或者 false
console.log(isNaN(12));//返回false,因为12是数字
console.log(iaNaN('pink老师'));//返回true,因为pink老师是非数字

5、字符串数据类型,**最好用单引号,**也可以用双引号

var strMsg='我爱北京天安门,天安门上太阳升~';//使用单引号表示字符串
var strMsg="我家大门常打开,开放怀抱等你~";//使用双引号表示字符串
var str="我是一个‘白富美’的程序员";//嵌套的话得用单双引号分开

//字符串转义符
var str="我是一个‘白富美’\n的程序员";//加上\n的话就可以输出时进行换行了


//字符串长度
//可以通过字符串的length属性可以获取整个字符串的长度
//1、检测获取到的字符串的长度
  var str='my name is tia';
  console.log(str.length);//输出字符串的长度为多少
 //2、字符串的拼接 +  号:口诀是数值相加,字符相连
  console.log('沙漠'+'骆驼');//输出为字符串:沙漠骆驼
  console.log('pink老师'+18);//输出:pink老师18
  console.log('pink'+true);//输出:pinktrue
  console.log(12+12);//输出:24
  console.log('12'+12);//输出:1212
//3、字符串拼接 加强
var age=18;
console.log('pink老师age岁');//这样不会输出:pink老师18岁,输出的是:pink老师age岁
console.log('pink老师'+age+'岁');//这样才会输出:pink老师18岁。变量和字符串相连的口诀:引引加加




//4、对于以上简单数据类型的例子:显示年龄
交互编程的三个要素:
用户输入,程序内部处理,输出结果

在程序中如何体现:
(1)弹出一个输入框(prompt),让用户输入年龄(用户输入)
(2)把用户输入的值用变量保存起来,把刚才输入的年龄与所要输出的字符串拼接(程序内部处理)
(3)使用alert语句弹出警示框
代码如下:
var age= prompt('请输入您的年龄');
var str='您今年已经'+age+'岁了';
alert(str);

6、布尔型Boolean
true 和 false

var flag=true;//true是1的意思,因此true+1得2
var flag1=false;//false是0的意思,因此false+1得1

7、Undefined和Null数据类型
(1)undefined:一个声明后没有被赋值的变量会有一个默认值undefined(如果进行相连或者相加时,注意结果)

undefined和数字相加,最后的结果是NaN(即 not a number )
undefined和字符串相加,最后的结果是 字符串
(2)null:是空值的意思

null和数字相加,最后的结果是数字本身
null和字符串相加,最后的结果是字符串

8、复合数据类型
(1)日期对象
JS将与日期相关的所有特性封装进Date对象中,包括日期信息及其操作,主要用来进行与时间相关的操作。
例子:显示程序运行时本地的时间,代码如下

<script language="javascript">
        var cur =new Date();//直接创建Date()对象,并设变量名字为 cur
        var years = cur.getFullYear();//从日期对象cur中取得年份
        var months = cur.getMonth();//从日期对象cur中取得月份
        var days = cur.getDate();//从日期对象cur中取得日子
        var hours=cur.getHours();//获取小时数
        var minutes= cur.getMinutes();//取得分钟数
        var seconds = cur.getSeconds();//取得秒数
        //显示取得的各个时间值,输出日期信息
        alert("此时时间是"+years+"年"+(months+1)+"月"+days+"日"+hours+"时"+minutes+"分"+seconds+"秒");
        

    </script>

运行效果如下:
在这里插入图片描述

(2)数学对象:
数学对象Math封装了与数学相关的特性,包括一些常数与数学函数,主要用于简单的基本数学计算。Math对象和全局对象一样,不能使用new运算符创建,需要在程序运行时由JS环境创建并且初始化。

例子如下:从Math对象中获取圆周率常数,计算一个半径为2单位的圆的面积

<script language="javascript">
        var r=2;//定义变量为半径
        var pi= Math.PI;//从Math对象中读取圆周率PI常量的值
        var s =pi*r*r;//计算面积
        alert("半径为2单位的圆的面积为:"+s+"单位");//显示圆的面积
</script>

在这里插入图片描述
(3)全局对象
Global全局对象,是所有全局方法的拥有者,用来统一管理全局方法,全局方法也就是全局函数。该对象不能使用new运算符创建对象实例,所有的方法直接调用即可。
(4)字符串对象
看看pink老师怎么讲的吧
(5)数组对象
Array对象封装了所有与数组相关的方法和属性,其内部存在多个数据段组合存储。形象理解为:有很多连续房间的楼层,每个房间都可以存放货物,提取货物时只需要给出楼层号和房间

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值