别担心,javascript对象有什么问题?

上楼回答的很好。看看这个纯JavaScript教程网站。

我是通过他学的/

JavaScript使用“面向对象编程”或“面向对象编程”。所谓“面向对象编程”,就是JavaScript可以分为大小对象,对象会在对象下继续划分,直到非常细化。所有编程都是基于对象的。小到一个变量,大到web文档、窗口甚至屏幕,都是对象。本章将描述JavaScript“面向对象”的操作。

物体的基本知识

对象是可以从JavaScript的势力范围中分割出来的一小块,可以是一段文字,一张图片,一个表格等等。每个对象都有自己的属性、方法和事件。对象的属性反映了对象的一些特定属性,例如字符串的长度、图像的长度和宽度、文本框中的文本等等。对象的方法可以对对象做一些事情,例如,提交表单、滚动窗口等等。对象的事件可以响应对象上发生的事情,比如提交表单生成表单的“提交事件”,点击链接生成“点击事件”。不是所有的对象都有以上三个属性,有的没有事件,有的只有属性。引用对象的任何“属性”都标有“.”。& lt属性名>”这个方法。

基本对象

现在我们要复习一下上面学过的内容——从对象的角度重新学习一些数据类型。

“数字”对象的数量。这个物件很少用,笔者一次也没见过。但是,还有更多属于“数”的对象,即“变量”。

属性

MAX_VALUE用法:数字。MAX _ VALUE;返回最大值。

MIN_VALUE用法:数字。最小值;返回最小值。

NaN用法:数字。南还是南;还“南”。“NaN”(不是数值)是很久以前引入的。

NEGATIVE_INFINITY用法:数字。负_无穷大;返回:负无穷大,一个小于“最小值”的值。

POSITIVE_INFINITY用法:数字。正_无穷大;返回:正无穷大,一个大于最大值的值。

方法

ToString()用法:。toString();以字符串形式返回一个数值。例如,如果a = = 123;;然后a.toString() == '123 '。

String字符串对象。声明string对象最简单、最快速、最有效、最常用的方法是直接赋值。

属性

长度用法:。长度;返回字符串的长度。

方法

CharAt()用法:。charAt(& lt;位置>);返回字符串位于位的第一个单个字符。注意:字符串中的一个字符是0位,第二个字符是1位,最后一个字符是长度-1位。

CharCodeAt()用法:。charCodeAt(& lt;位置>);返回字符串位于单个位字符的第一个ASCII代码处。

FromCharCode()用法:string。Fromcharcode (a,b,c...);返回一个字符串,其ASCII码由a、b、c确定...

IndexOf()用法:。index of(& lt;另一个字符串对象>;此方法返回“二维数组”中的元素。任何“myArray”形式的调用实际上只返回“myArray[3]”。要使用多维数组,请使用这个虚方法:

var myArray = new Array(新数组(),新数组(),新数组(),...);

其实这是一个一维数组,里面的每个元素都是一个数组。当调用这个“二维数组”的元素时:myArray[2][3] =...;

属性

长度用法:。长度;返回:数组的长度,即数组中有多少个元素。它等于数组中最后一个元素的下标加1。所以,要添加一个元素,只需:myArray[myArray.length] =...

方法

join():的用法。加入(& lt分隔符>);返回一个字符串,该字符串对数组中的元素进行排序,并在元素之间使用Placed。此方法不影响数组的原始内容。

Reverse()用法:。反向();反转数组中元素的顺序。如果在数组[1,2,3]上使用这个方法,会使数组变成[3,2,1]。

Slice()用法:。切片(& lt开始>[,& lt最终>]);返回一个数组,该数组是原始数组的子集,最后从开始。如果不给出,子集被带到原数组的末尾。

sort()的用法:排序([& lt;方法功能>;]);按照一定的顺序排列数组中的元素。如果不指定<方法函数>;,它们按字母顺序排列。在这种情况下,80在9的前面。如果;,按;按指定的排序方法排序。& lt方法功能>;很难说,这里只有一些有用的;给大家介绍一下。

按升序对数字进行排序:

函数sortMethod(a,b) {

返回a-b;

}

myarray . sort(sort method);

按降序排列数字:将上面的“a-b”改为“b-a”。

关于函数,请参见下文。

Math“Math”对象,它提供数据的数学计算。下面提到的属性和方法将不再详细描述。请记住使用“数学”这种格式。

属性

e返回常数e (2.718281828...).

Ln 2返回2的自然对数(LN2)。

LN10返回10的自然对数(ln 10)。

LOG2E返回e的对数(LOG2E ), 2为低。

LOG10E返回值为10的e的对数(log10e)。

PI返回π(3.1415926535...).

SQRT1_2得出1/2的平方根。

SQRT2返回2的平方根。

方法

Abs(x)返回x的绝对值。

Acos(x)返回x的反余弦(余弦等于x的角度),以弧度表示。

Asin(x)返回x的反正弦。

Atan(x)返回x的反正切值。

Atan2(x,y)返回复平面中点(x,y)对应的复数的振幅角,用弧度表示,其值介于-π和π之间。

Ceil(x)返回大于或等于x的最小整数。

Cos(x)返回x的余弦值。

Exp(x)得出e的x次方(ex)。

Floor(x)返回小于或等于x的最大整数。

Log(x)返回x的自然对数(ln x)。

Max(a,b)返回a和b中的较大值。

Min(a,b)得出a和b中较小的一个数。

Pow(n,m)得出n的m次幂(nm)。

Random()返回一个大于0小于1的随机数。

Round(x)返回x的舍入值。

Sin(x)返回x的正弦值。

Sqrt(x)返回x的平方根。

Tan(x)返回x的正切值。

日期日期对象。该对象可以存储任何日期,从0001到9999,并且可以精确到毫秒(1/1000秒)。在内部,date对象是一个整数,它是从0: 00,1970,1到date对象指向的日期之间的毫秒数。如果日期早于1970,则为负数。所有日期和时间,如果没有指定时区,则采用“UTC”(世界时)时区,其值与“GMT”(格林威治标准时间)相同。

定义日期对象:

var d =新日期;

这个方法使d成为一个日期对象,并有一个初始值:当前时间。如果要自定义初始值,可以使用:

var d =新日期(99,10,1);//10 99年10月1

var d =新日期(' Oct 1,1999 ');//10 99年10月1

等一下。方法。最好的办法就是用下面介绍的“方法”严格定义时间。

方法

下面有很多类似“g/set[UTC]XXX”的方法,表示“getXXX”和“setXXX”方法都有。“get”是获取某个值,而“set”是设置某个值。如果有字母“UTC”,则表示获取/设置的值基于UTC时间,否则表示基于当地时间或浏览期默认时间。

除非另有说明,方法的使用格式为:“。& lt法>”,下同。

G/set[UTC]FullYear()返回/设置年份,用四位数表示。如果使用“x.set[UTC]FullYear(99)”,则年份设置为0099。

G/set[UTC]Year()返回/设置年份,用两位数表示。设置时浏览器自动添加“19”开头,所以用“x.set[UTC]Year(00)”将年份设置为1900。

G/set[UTC]Month()返回/设置月份。

G/set[UTC]Date()返回/设置日期。

G/set[UTC]Day()返回/设置星期,0表示星期日。

G/set[UTC]Hours()返回/设置24小时制的小时数。

G/set[UTC]Minutes()返回/设置分钟数。

G/set[UTC]Seconds()返回/设置秒数。

G/set[UTC]Milliseconds()返回/设置毫秒数。

G/setTime()返回/设置时间,这是date对象的内部处理方法:从1970 1年6月0: 00到date对象指向的日期之间的毫秒数。如果要将date对象指向的时间延迟1小时,请使用:" x . settime(x . gettime()+60 * 1000);"(一小时60分,一分钟60秒,一秒1000毫秒)。

GetTimezoneOffset()返回date对象采用的时区与格林威治标准时间之间的分钟数。在格林威治以东的市区,该值为负值,例如,中国时区(GMT+0800)返回“-480”。

ToString()返回一个描述date对象所指向的日期的字符串。此字符串的格式类似于:“fri jul 21 15:43:46 UTC+0800 2000”。

ToLocaleString()返回描述date对象指向的日期的字符串,格式以本地时间表示。比如“2000-07-21 15:43:46”。

ToGMTString()以GMT格式返回描述date对象所指向的日期的字符串。

ToUTCString()以UTC格式返回描述date对象所指向的日期的字符串。

parse (): date的用法。parse();返回date对象的内部表示形式。

全局对象

全局对象从来都是不可见的,可以说是虚拟的,其目的是“对象化”全局函数。在微软JScript语言引用中,它被称为“全局对象”,但是引用它的方法和属性从来不用“Global.xxx”(除此之外,还会出错),而是直接用“xxx”。

属性

南很久以前就说过了。

方法

Eval()将括号中的字符串作为标准语句或表达式运行。

IsFinite()返回true如果括号中的数字是“有限的”(在数字之间。最小值和数量。MAX _ VALUE);否则返回false。

如果括号中的值为“NaN”,IsNaN()返回true,否则返回false。

ParseInt()将括号中的内容转换为整数后返回值。如果括号中有字符串,则字符串开头的数字部分转换为整数,如果以字母开头,则返回“NaN”。

ParseFloat()在将括号中的字符串转换为浮点数后返回值。字符串开头的数字部分转换为浮点数,如果以字母开头,则返回“NaN”。

ToString()用法:。toString();将对象转换为字符串。如果在括号中指定数值,则在转换过程中,所有数值都会转换为特定的系统。

Escape()从括号中的字符串返回一个新的编码字符串。此编码应用于URL,即空格以“%20”的格式书写。“+”没有编码。如果“+”是编码,请使用:escape(' ... '), 1).

Unescape()是escape()的反义词。将括号中的字符串解码成普通字符串。

函数的函数定义

所谓“函数”,就是一个对象或者一个对象的方法,有返回值。

功能类型

常见的函数有:构造函数,比如Array(),可以构造一个数组;全局函数,即全局对象中的方法;自定义功能;等一下。

自定义功能

使用以下语句定义函数:

函数函数名([参数集]) {

...

[return[& lt;值>];]

...

}

其中,函数之后和函数末尾使用的大括号不能省略,即使整个函数只有一句话。

函数名与变量名具有相同的命名规则,即它们只包含字母数字下划线、通向顶部的字母,并且不能与保留字重复。

参数集是可有可无的,但括号必须存在。

参数是将信息从函数外部传递到函数内部的桥梁。比如你想调用一个函数返回3的立方,你得让函数知道“3”的值。这时,必须有一个变量来接收值。这个变量称为参数。

参数集是由逗号分隔的一个或多个参数的集合,例如:a,b,c。

函数内部有一行或多行语句,这些语句不会立即执行,只有在其他程序调用它时才会执行。这些语句可能包含“返回”语句。在执行函数时,当遇到return语句时,函数立即停止执行,返回到调用它的程序。如果“return”后面跟有,则在退出函数时返回该值。

在函数内部,参数可以直接作为变量使用,var语句可以创建一些新的变量,但是这些变量都不能被函数外部的过程调用。要让函数内部的信息被外部调用,要么使用“return”返回值,要么使用全局变量。

全局变量在脚本“根”的“var”语句中定义的变量(不在函数内部)是全局变量,在整个过程中的任何地方都可以调用和更改。

例子

函数addAll(a,b,c) {

返回a+b+c;

}

var total = addAll(3,4,5);

这个例子建立了一个名为“addAll”的函数,它有三个参数:A、B、C,返回三个数相加的结果。在函数外部,使用“var total = addAll(3,4,5);”接收函数的返回值。

更多的时候,一个函数是没有返回值的,在一些强调严格性的语言中称为“过程”,比如Basic语言中的“Sub”,Pascal语言中的“procedure”。

属性

Arguments反映外部程序调用函数时指定的参数的数组。用法:在函数内部直接调用“arguments”。