Javascript中的高级对象
【Number(数字)对象 字符串(String)对象 Date(日期)对象 Boolean(布尔)对象 Math(算数)对象 RegExp(正则表达式)对象 Array(数组)对象】
变量就是对象
1.number(数字)对象
创建number(数字)对象
1.1变量就是对象
var num1=100;
alert(typeof num1); //number---基本数据类型
1.2new Number()
var num3=new Number(123);
alert(typeof num3); //object----引用数据类型
基本数据类型number--- 引用数据类型object---new
引用数据类型object--- 基本数据类型number---- "="
2.调用对象提供的属性和方法
属性:
Number.MAX_VALUE 最大值
alert(Number.MAX_VALUE);//1.7976931348623157e+308
Number.MIN_VALUE 最小值
alert(Number.MIN_VALUE); //5e-324
方法:
Number.parseFloat() 将字符串转换成小数,和全局方法 parseFloat() 作用一致。
var res1=Number.parseFloat("12.5");
alert(res1+"--"+typeof res1);
Number.parseInt() 将字符串转换成整型数字,和全局方法 parseInt() 作用一致。
var res2=Number.parseInt("120");
alert(res2+"--"+typeof res2);
Number.isNaN() 判断传递的参数是否为isNaN()。【非数字=true 数字=false】
var res3=isNaN("hello");//true
var res3=isNaN("120");//false
var res3=isNaN(120);//false
数字类型原型上的一些方法
toFixed()返回指定小数位数的表示形式。[返回值是字符串类型,会四舍五入]。
var num4=128.56739;
num4=num4.toFixed(3);
alert(num4+"--"+typeof num4);
3.特殊之处
(1).所有 JavaScript 数字均为 64 位
整数(不使用小数点或指数计数法)最多为 15 位。
小数的最大位数是 17,但是浮点运算并不总是 100% 准确
(2).如果前缀为 0,则 JavaScript 会把数值常量解释为八进制数
var y = 0377;
如果前缀为 0 和 "x",则解释为十六进制数
var z = 0xFF;
(3).可以使用 toString() 方法 输出16进制、8进制、2进制。
var myNumber=128;
myNumber.toString(16); // 返回 80
myNumber.toString(8); // 返回 200
myNumber.toString(2); // 返回 10000000
(4).当数字运算结果超过了JavaScript所能表示的数字上限(溢出),结果为一个特殊的无穷大(infinity)值,在JavaScript中以Infinity表示.同样地,当负数的值超过了JavaScript所能表示的负数范围,结果为负无穷大,在JavaScript中以-Infinity表示。
(5).NaN 属性是代表非数字值的特殊值,使用 isNaN() 全局函数来判断一个值是否是 NaN 值
2.字符串(string)对象
1.创建字符串(String)对象
字符串的数据的标志是"" / '' ;
1.1 变量即对象
var str1="hello";
alert(typeof str1); //string---基本数据类型
1.2 new String();
var str2=new String("hello");
alert(typeof str2); //object---复合数据类型
基本数据类型string---》引用数据类型object---new
引用数据类型object---》基本数据类型string---- “=“/ valueOf() / toString()
2.调用对象提供的属性和方法
String对象属性
constructor--对创建该对象的函数的引用
alert(str3.constructor); //function String() { [native code] }
length---字符串的长度
alert(str3.length); //5
prototype--允许您向对象添加属性和方法 [后面详细介绍]
alert(str3.prototype); // undefined
String 对象方法
特殊之处
Javascript 中可以使用反斜线(\)插入特殊符号,如:撇号,引号等其他特殊符号。
\' 单引号
\" 双引号
\\ 斜杆
\n 换行
\r 回车
\t tab
\b 空格
3.Date(日期)对象
1.通过new Date 创建对象
1.1 new Date(); //得到当前系统时间
var today1 = new Date();
//alert(today); //Thu Mar 17 2022 11:12:53 GMT+0800 (GMT+08:00)
1.2new Date(毫秒数); //从1970-1-1 00:00:00【标准基准时间】 向后推指定的毫秒数 var today2 = new Date(1000);
//alert(today2); //Thu Jan 01 1970 08:00:01 GMT+0800 (GMT+08:00)
1.3 new Date(dateString); //使用字符串设置一个指定的时间日期
var today3 = new Date("2020-05-20 10:30:30");
//var today3 = new Date("2020/05/20 10:30:30");
//var today3 = new Date("2020年05月20日 10:时30分30秒");【无效的格式】
//alert(today3);
1.4 new Date(year, monthIndex [, day [, hours [, minutes [, seconds [, milliseconds]]]]]);
//使用指定的数字设置一个指定的时间日期,注意月份从0开始算
var today4 = new Date(2020,11,20,10,30,30);
alert(today4);
2.调用对象提供的属性和方法
Date对象属性
constructor---返回创建此对象的 Date 函数。
function Date() { [native code] }
prototype----使您有能力向对象添加属性和方法。[后面详细介绍]
Date对象方法
//得到时间日期 getXXXX()
getFullYear() 从 Date 对象以四位数字返回年份。
getMonth() 从 Date 对象返回月份 (0 ~ 11)。
getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)。
getHours() 返回 Date 对象的小时 (0 ~ 23)。
getMinutes() 返回 Date 对象的分钟 (0 ~ 59)。
getSeconds() 返回 Date 对象的秒数 (0 ~ 59)。
getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6)。
getTime() 返回 1970 年 1 月 1 日至今的毫秒数。
//设置时间日期 setXXX(参数)
setFullYear() 设置 Date 对象中的年份(四位数字)。
setMonth() 设置 Date 对象中月份 (0 ~ 11)。
setDate() 设置 Date 对象中月的某一天 (1 ~ 31)。
setHours() 设置 Date 对象中的小时 (0 ~ 23)。
setMinutes() 设置 Date 对象中的分钟 (0 ~ 59)。
setSeconds() 设置 Date 对象中的秒钟 (0 ~ 59)。
parse() 返回1970年1月1日午夜到指定日期(字符串)的毫秒数。
3.特殊之处
日期对象也可用于比较两个日期。
将当前日期与 2100 年 1 月 14 日做了比较
var x=new Date();
x.setFullYear(2100,0,14);
var today = new Date();
if(x>today){
alert("今天是2100年1月14日之前");
}else{
alert("今天是2100年1月14日之后");
}
4.Boolean(布尔)对象
1.创建Boolean对象
1.1变量即对象
var boo1=true;
alert(typeof boo1); //boolean
1.2new Boolean()
var boo2=new Boolean(false);
alert(typeof boo2); //object
2.调用对象提供的属性和方法
constructor属性--返回对创建此对象的 Boolean 函数的引用
prototype-------使您有能力向对象添加属性和方法。
toString() 把布尔值转换为字符串,并返回结果。
valueOf() 返回 Boolean 对象的原始值。
3.特殊之处
var num1=10; // 0==false 非0数字---true
if(num1){
alert("非0数字---true");
}else{
alert("0==false");
}
var str=""; // 空字符串==false 非空字符串==true
if(str){
alert("非空字符串==true");
}else{
alert("空字符串==false");
}
var test1=null; // null==false