JS内部对象    叫内建类还是内建对象?

JavaScript为我们提供了一些非常有用的常用内部对象和方法。用户不需要用脚本来实现这些功能。这正是基于对象编程的真正目的。在JavaScript提供了string(字符串)、math(数值计算)和Date(日期)三种对象和其它一些相关的方法。从而为编程人员快速开发强大的脚本程序提供了非常有利的条件。

常用内置对象

String,只有一个length属性

Math,是静态对象,不能构造它的实例;在应用时不需要进行自行更改,所以并不需要构造其实例对其具体化。

Math对象中定义的属性是数值计算中公认的常量。(Math对象的属性的引用:Math.属性名;)

如属性名称E,对应的数值是自然对数的底;

属性名称PI,对应的数值是圆周率;

定义的方法是数值计算中广泛使用的数学函数;(Math对象的方法的引用:Math.方法名([参数]);)

如math.sqrt(4)

Date,提供了日期和时间的方法;

Date对象有三种不同的构造函数,所以创建Date对象实例的方法也有以下三种。

1 创建的实例存储当前系统的日期和时间:

name=new date();

2 使用时间字符串来指定时间:

name=new date(dateString);

3 直接指定年、月、日、时间等

name=new date(year,month,date[,hour[,minutes,[second[,ms]]]]);

Date对象中定义的方法及功能如:

getMonth():返回时间对象的月数;

setMonth():设置时间对象的月数;

toString():将时间对象转换为字符串;

Arry,将数组作为对象访问。当我们定义了一个数组时,便创建了一个Arrayc对象,Array对象有一个length属性,表示数组长度。

RegExp,用于字符品的查找、替换等操作。

JS提供了很多类,这些类按照不同的功能封装了一些函数和变量,用于不同的数据运算,如字符串运算、数学运算、数值转化、格式化等;这些类被包含在JS解释器中,因此,也被称为内建类,一些内建类无须实例化,可以直接调用类的方法和属性,而另外一些类则需要实例化才可以调用类的方法和属性;

类是某一类事物的抽象,它是一个概念的范畴,但要使用该类中某个具体的个体时,你必须为该个体创建一个实例来标识它。例如,你可以使用people这个类来描述“人”这个范畴,人类可以有肤色、头发等属性,也可以有跑、坐这些方法;但当你要使用people类中的某个个体时,如名叫tom的人时,那么你就必须创建一个实例,标识该个体,一般会用到new这个关键字;

如创建一个名为tom的people实例:

var tome=new people()

JS内建的类也是某一事物的抽象,所以也必须创建实例才能使用,如Date类,首先要创建该类的新实例,然后才可使用它的方法和属性,也就是创建了类的一个新实例后,该类的所有属性和方法都会被复制到该实例中。

var currentDate=new Date()

var currentMinute=currentDate.getMinutes()

有一些类虽然也是事物的抽象,但是这些类一般不会有什么个体而言,如月亮抽象为一个类,该类有方法和属性,但是世上只有一个月亮,它是唯一的,所以也谈不上个体,也就无须实例化,JS中内建的Math类就属于这一类型,无需实例化;

对象 创建对象实例的方法 属性 属性解释 方法类别 方法关键字 解释
string var 实例名=new Strin("字符串内容"); length 处理字符串本身的方法: charAt(idx) 返回指定位置处字符;位置索引均以0开始计算;
indexOf(chr) 查找并返回起始位置值,若打不到则返回-1;
lastIndexOf(chr) 查找并返回起始位置值(从右开始找,但值是从左边始的);
subString(startIdx,endIdx) 截取
concat(Str2) 相对于+号;

Str1.concat(Str2)

match(regExp) 使用指定的正则表达式来搜索字符串,返回一个数组,记录了在字符串中匹配正则模式的位置。
replace(regExp,replaceTex) 替换操作
search(regExP) 搜索是否出现
slice(startIdx,[endIdx] 提取字符串
split("delimiteCharacter"[,limitInteger]) 该方法将字符串中的字符通过指定的分隔符进行划分,并使用所得的片段组成一个数组。

var ex="Sun,Mon,Tue,Wed,Thu,Fri,Sta";

var exArray=ex.split(",");

substr(startIdx,[length]) 截取
toString() 返回字符串的值
toLowerCase() 转为小写
toUpperCase() 转为大写
valueOf() 返回字符串的值
处理字符串在网页中外观的方法: big()
blink()
bold()
fixed()
fontcolor(color)
fontsize(size)
italics()
small()
strike()
sub()
sup()
将字符串转化为超文本的方法: anchor(anchor_name) 用来在网页中创建一个锚点;相当于在标记<A>中设置name属性;
link(url) 为字符串对象加上超级链接。相当于为标记<A>设定href属性;
Date name=new Date() 返回日期和时间 getDate()
name=new Date(dateString) getDay() 0为星期天
name= new Date(year,month,date[,hour[,minutes[,seconds[,ms]]]]) getHours()
getMinutes()
getMilliseconds()
getMonth()
getSeconds()
getTime 返回时间对象到1970.1.1之间的豪秒数;
设置时间或日期 setDate()
setHours()
setMinutes()
setMilliseconds()
setMonth()
setTime()
setYear()
转换格式与求值 toGMTString()
toLocalString()
toString()
valueOf() 返回时间对象到1970.1.1之间的豪秒数;
Array lengh toString() 返回数组的字符串形式,逗号分隔;
join([separator]) 使用指定分隔符返回数组的字符串形式;
reverse() 数组元素逆序
sort([comparisonFunc]) 对数组元素进行排序,如果缺省参数,按字母排;
pop() 删除数组的最后一个元素;
push(newItme) 将一个新的元素加入数组
slice(fidx,[tidx]) 提取部分元素
RegExp 正则表达式用于字符串的查找、替换等操作。要查找的字符串称为模式,用正则表达式表示。
Math E 自然对数的底,2.71828; abs()
LN10 10的自然对数:2.30258 sin()
LN2 cos()
LOG2E 底数为2的E的对数:1.44269; asin()
LOG10E acos()
PI 3.141593 tan()
SQRT1_2 1/2的平方根:0.7071; atan()
SQRT2 2的平方根:1.4142; log()
exp()
pow(a,b) 求a的B次幂;
sqrt()
ceil() 返回不小于A的最小整数;
floor() 返回不大于A的最大整数;
max(a,b)
min(a,b)
random()
round()