JavaScript中本地对象、内置对象和宿主对象

本地对象

Java Script 中本地对象即为独立于宿主环境的 Java Script 实现提供的对象,例如array obj regexp等可以用new来实例化的对象。
本地对象具体有:Object、Function、Array、String、Boolean、Number、Date、RegExp、Error、EvalError、RangeError、ReferenceError、SyntaxError、TypeError、URIError这些,简单的说, Java Script本身定义的类即为本地对象。
其中常用的有Object、Function、Array、String、Boolean、Number、Date、RegExp、Error


Object

Object即是对象,它拥有属性和方法。
访问对象的属性
访问对象属性的语法是:

objectName.propertyName

本例使用 String 对象的 length 属性来查找字符串的长度:

var message="Hello World!";
var x=message.length;

在以上代码执行后,x 的值是:
12
访问对象的方法
您可以通过下面的语法调用方法:

objectName.methodName()

这个例子使用 String 对象的 toUpperCase() 方法来把文本转换为大写:

var message="Hello world!";
var x=message.toUpperCase();

在以上代码执行后,x 的值是:

HELLO WORLD!

Function

Function便是函数,是由事件驱动的或者当它被调用时执行的可重复使用的代码块。


Array

Array即是数组,用于在单个变量中存储多个值。

创建Array的语法
new Array();
new Array(size);
new Array(element0,element1,....elementn)

size是数组期望的元素个数。返回的数组,length将被设定为size的值。

Array对象属性
1. constructor

  返回对创建此对象的数组函数的引用。

2. length

  设置或返回数组中元素的数目

3. prototype

  使您有能力向对象添加属性和方法。

Array对象常用方法
concat()连接两个或更多的数组,并返回结果。
join()把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。
pop()删除并返回数组的最后一个元素
push()向数组的末尾添加一个或更多元素,并返回新的长度。
reverse()颠倒数组中元素的顺序。
shift()删除并返回数组的第一个元素
slice()从某个已有的数组返回选定的元素
sort()对数组的元素进行排序
splice()删除元素,并向数组添加新元素。
toSource()返回该对象的源代码。
toString()把数组转换为字符串,并返回结果。
toLocaleString()把数组转换为本地数组,并返回结果。
unshift()向数组的开头添加一个或更多元素,并返回新的长度。
valueOf()返回数组对象的原始值
主要方法的使用

把 concat() 中的参数连接到数组 a 中


var a = [1,2,3];
document.write(a.concat(4,5));

输出:

1,2,3,4,5“

Join() 创建一个数组,然后把它的所有元素放入一个字符串:


var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
document.write(arr.join())

输出:

George,John,Thomas“

sort() 将创建一个数组进行排序


var x=[4,5,7,1,6,9,3,10,132,12];
console.log(x.sort());
console.log(x.sort(function(a,b){
return a-b;
}));
console.log(x.sort(function(a,b){
return b-a;
})) ;
console.log(x);

输出:

[1, 10, 12, 132, 3, 4, 5, 6, 7, 9]
[1, 3, 4, 5, 6, 7, 9, 10, 12, 132]
[132, 12, 10, 9, 7, 6, 5, 4, 3, 1]
[132, 12, 10, 9, 7, 6, 5, 4, 3, 1]“

pop() 创建一个数组,然后删除数组的最后一个元素。请注意,这也会改变数组的长度:


var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
document.write(arr)
document.write("
")
document.write(arr.pop())
document.write("
")
document.write(arr)

输出:

George,John,Thomas
Thomas
George,John“

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。


var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
document.write(arr + "
")
document.write(arr.push("James") + "
")
document.write(arr)

输出:

George,John,Thomas
George,John,Thomas,James“

String

String便是字符串,用于处理文本(字符串)。

`创建String的语法
new String(text);
String(text);

text是要存储在String对象中或转换成原始字符串的值。
当 String() 和运算符 new 一起作为构造函数使用时,它返回一个新创建的 String 对象,存放的是字符串 s 或 s 的字符串表示。
当不用 new 运算符调用 String() 时,它只把 s 转换成原始的字符串,并返回转换后的值。

String对象属性
1.constructor

   对创建该对象的函数的引用

2. length

  字符串的长度

3. prototype

  允许您向对象添加属性和方法

String对象方法
anchor()创建 HTML 锚。
big()用大号字体显示字符串。
blink()显示闪动字符串。
bold()使用粗体显示字符串。
charAt()返回在指定位置的字符。
charCodeAt()返回在指定的位置的字符的 Unicode 编码。
concat()连接字符串。
fixed()以打字机文本显示字符串。
fontcolor()使用指定的颜色来显示字符串。
fontsize()使用指定的尺寸来显示字符串。
fromCharCode()从字符编码创建一个字符串。
indexOf()检索字符串。
italics()使用斜体显示字符串。
lastIndexOf()从后向前搜索字符串。
link()将字符串显示为链接。
localeCompare()用本地特定的顺序来比较两个字符串。
match()找到一个或多个正则表达式的匹配。
replace()替换与正则表达式匹配的子串。
search()检索与正则表达式相匹配的值。
slice()提取字符串的片断,并在新的字符串中返回被提取的部分。
small()使用小字号来显示字符串。
split()把字符串分割为字符串数组。
strike()使用删除线来显示字符串。
sub()把字符串显示为下标。
substr()从起始索引号提取字符串中指定数目的字符。
substring()提取字符串中两个指定的索引号之间的字符。
sup()把字符串显示为上标。
toLocaleLowerCase()把字符串转换为小写。
toLocaleUpperCase()把字符串转换为大写。
toLowerCase()把字符串转换为小写。
toUpperCase()把字符串转换为大写。
toSource()代表对象的源代码。
toString()返回字符串。
valueOf()返回某个字符串对象的原始值。


Boolean对象

Boolean 对象表示两个值:”true” 或 “false”。

创建Boolean对象的语法:
new Boolean(value); //构造函数
Boolean(value); //转换函数

  参数 value 由布尔对象存放的值或者要转换成布尔值的值。
  当作为一个构造函数(带有运算符 new)调用时,Boolean() 将把它的参数转换成一个布尔值,并且返回一个包含该值的 Boolean 对象。
如果作为一个函数(不带有运算符 new)调用时,Boolean() 只将把它的参数转换成一个原始的布尔值,并且返回这个值。

Boolean对象属性
1.constructor

返回对创建此对象的 Boolean 函数的引用

2.prototype

使您有能力向对象添加属性和方法。

Booleab对象方法
toSource()返回该对象的源代码。
toString()把逻辑值转换为字符串,并返回结果。
valueOf()返回 Boolean 对象的原始值。


Number

Number 对象是原始数值的包装对象。

创建Number对象的语法:
var myNum=new Number(value);
var myNum=Number(value);

  参数 value 是要创建的 Number 对象的数值,或是要转换成数字的值。
  当 Number() 和运算符 new 一起作为构造函数使用时,它返回一个新创建的 Number 对象。如果不用 new 运算符,把 Number() 作为一个函数来调用,它将把自己的参数转换成一个原始的数值,并且返回这个值(如果转换失败,则返回 NaN)。

Number对象属性
1.constructor

返回对创建此对象的 Number 函数的引用。

2.MAX_VALUE

可表示的最大的数。

3.MIN_VALUE

可表示的最小的数。

4.NaN

非数字值。

5.NEGATIVE_INFINITY

负无穷大,溢出时返回该值。

6.POSITIVE_INFINITY

正无穷大,溢出时返回该值。

7.prototype

使您有能力向对象添加属性和方法。

Number对象方法
toString把数字转换为字符串,使用指定的基数。
toLocaleString把数字转换为字符串,使用本地数字格式顺序。
toFixed把数字转换为字符串,结果的小数点后有指定位数的数字。
toExponential把对象的值转换为指数计数法。
toPrecision把数字格式化为指定的长度。
valueOf返回一个 Number 对象的基本数字值。


Date

Date 对象用于处理日期和时间。

创建 Date 对象的语法:
var myDate=new Date()

注释:Date 对象会自动把当前日期和时间保存为其初始值。

Date对象属性
1.constructor

返回对创建此对象的 Date 函数的引用。

2.prototype

使您有能力向对象添加属性和方法。

Date对象方法
Date()返回当日的日期和时间。
getDate()从 Date 对象返回一个月中的某一天 (1 ~ 31)。
getDay()从 Date 对象返回一周中的某一天 (0 ~ 6)。
getMonth()从 Date 对象返回月份 (0 ~ 11)。
getFullYear()从 Date 对象以四位数字返回年份。
getYear()请使用 getFullYear() 方法代替。
getHours()返回 Date 对象的小时 (0 ~ 23)。
getMinutes()返回 Date 对象的分钟 (0 ~ 59)。
getSeconds()返回 Date 对象的秒数 (0 ~ 59)。
getMilliseconds()返回 Date 对象的毫秒(0 ~ 999)。
getTime()返回 1970 年 1 月 1 日至今的毫秒数。
getTimezoneOffset()返回本地时间与格林威治标准时间 (GMT) 的分钟差。
getUTCDate()根据世界时从 Date 对象返回月中的一天 (1 ~ 31)。
getUTCDay()根据世界时从 Date 对象返回周中的一天 (0 ~ 6)。
getUTCMonth()根据世界时从 Date 对象返回月份 (0 ~ 11)。
getUTCFullYear()根据世界时从 Date 对象返回四位数的年份。
getUTCHours()根据世界时返回 Date 对象的小时 (0 ~ 23)。
getUTCMinutes()根据世界时返回 Date 对象的分钟 (0 ~ 59)。
getUTCSeconds()根据世界时返回 Date 对象的秒钟 (0 ~ 59)。
getUTCMilliseconds()根据世界时返回 Date 对象的毫秒(0 ~ 999)。
parse()返回1970年1月1日午夜到指定日期(字符串)的毫秒数。
setDate()设置 Date 对象中月的某一天 (1 ~ 31)。
setMonth()设置 Date 对象中月份 (0 ~ 11)。
setFullYear()设置 Date 对象中的年份(四位数字)。
setYear()请使用 setFullYear() 方法代替。
setHours()设置 Date 对象中的小时 (0 ~ 23)。
setMinutes()设置 Date 对象中的分钟 (0 ~ 59)。
setSeconds()设置 Date 对象中的秒钟 (0 ~ 59)。
setMilliseconds()设置 Date 对象中的毫秒 (0 ~ 999)。
setTime()以毫秒设置 Date 对象。
setUTCDate()根据世界时设置 Date 对象中月份的一天 (1 ~ 31)。
setUTCMonth()根据世界时设置 Date 对象中的月份 (0 ~ 11)。
setUTCFullYear()根据世界时设置 Date 对象中的年份(四位数字)。
setUTCHours()根据世界时设置 Date 对象中的小时 (0 ~ 23)。
setUTCMinutes()根据世界时设置 Date 对象中的分钟 (0 ~ 59)。
setUTCSeconds()根据世界时设置 Date 对象中的秒钟 (0 ~ 59)。
setUTCMilliseconds()根据世界时设置 Date 对象中的毫秒 (0 ~ 999)。
toSource()返回该对象的源代码。
toString()把 Date 对象转换为字符串。
toTimeString()把 Date 对象的时间部分转换为字符串。
toDateString()把 Date 对象的日期部分转换为字符串。
toGMTString()请使用 toUTCString() 方法代替。
toUTCString()根据世界时,把 Date 对象转换为字符串。
toLocaleString()根据本地时间格式,把 Date 对象转换为字符串。
toLocaleTimeString()根据本地时间格式,把 Date 对象的时间部分转换为字符串。
toLocaleDateString()根据本地时间格式,把 Date 对象的日期部分转换为字符串。
UTC()根据世界时返回 1970 年 1 月 1 日 到指定日期的毫秒数。
valueOf()返回 Date 对象的原始值。


RegExp

RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具。

“直接量语法:
/pattern/attributes

创建 RegExp 对象的语法:
new RegExp(pattern, attributes);“

参数 pattern 是一个字符串,指定了正则表达式的模式或其他正则表达式。

参数 attributes 是一个可选的字符串,包含属性 “g”、”i” 和 “m”,分别用于指定全局匹配、区分大小写的匹配和多行匹配。ECMAScript 标准化之前,不支持 m 属性。如果 pattern 是正则表达式,而不是字符串,则必须省略该参数。

返回值为一个新的 RegExp 对象,具有指定的模式和标志。如果参数 pattern 是正则表达式而不是字符串,那么 RegExp() 构造函数将用与指定的 RegExp 相同的模式和标志创建一个新的 RegExp 对象。

RegExp对象属性
  • global RegExp 对象是否具有标志 g。
  • ignoreCase RegExp 对象是否具有标志 i。
  • lastIndex 一个整数,标示开始下一次匹配的字符位置。
  • multiline RegExp 对象是否具有标志 m。
  • source 正则表达式的源文本。
RegExp对象方法
  • compile 编译正则表达式。
  • exec 检索字符串中指定的值。返回找到的值,并确定其位置。
  • test 检索字符串中指定的值。返回 true 或 false。

内置对象

Math

Math 对象用于执行数学任务。

使用 Math 的属性和方法的语法:

var pi_value=Math.PI;
var sqrt_value=Math.sqrt(15);

注释:Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math(),像 Math.sin() 这样的函数只是函数,不是某个对象的方法。您无需创建它,通过把 Math 作为对象使用就可以调用其所有属性和方法。

Math 对象属性
E返回算术常量 e,即自然对数的底数(约等于2.718)。
LN2返回 2 的自然对数(约等于0.693)。
LN10返回 10 的自然对数(约等于2.302)。
LOG2E返回以 2 为底的 e 的对数(约等于 1.414)。
LOG10E返回以 10 为底的 e 的对数(约等于0.434)。
PI返回圆周率(约等于3.14159)。
SQRT1_2返回返回 2 的平方根的倒数(约等于 0.707)。
SQRT2返回 2 的平方根(约等于 1.414)。
Math 对象方法
abs(x)返回数的绝对值。
acos(x)返回数的反余弦值。
asin(x)返回数的反正弦值。
atan(x)以介于 -PI/2 与 PI/2 弧度之间的数值来返回 x 的反正切值。
atan2(y,x)返回从 x 轴到点 (x,y) 的角度(介于 -PI/2 与 PI/2 弧度之间)。
ceil(x)对数进行上舍入。
cos(x)返回数的余弦。
exp(x)返回 e 的指数。
floor(x)对数进行下舍入。
log(x)返回数的自然对数(底为e)。
max(x,y)返回 x 和 y 中的最高值。
min(x,y)返回 x 和 y 中的最低值。
pow(x,y)返回 x 的 y 次幂。
random()返回 0 ~ 1 之间的随机数。
round(x)把数四舍五入为最接近的整数。
sin(x)返回数的正弦。
sqrt(x)返回数的平方根。
tan(x)返回角的正切。
toSource()返回该对象的源代码。
valueOf()返回 Math 对象的原始值。

宿主对象

所有非本地对象都是宿主对象(host object),即由 ECMAScript 实现的宿主环境提供的对象。
所有 BOM 和 DOM 对象都是宿主对象。
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值