问题描述:
1、isNaN
2、。。。。。
解析:
js的方法可是有一些,想具体了解,可以去下载一本js手册
a
abs 返回数字的绝对值
acos 返回数的反余弦值
anchor 在对象中的指定文本两端放置一个有 NAME 属性 HTML 锚点
apply 应用某一对象的一个方法,用另一个对象替换当前对象
asin 返回数字的反正弦值
atan 返回数字的反正切值
atan2 返回由 X 轴到 ( y , x ) 点的角度(以弧度为单位)
atEnd 返回一个 Boolean 值,指明枚举算子是否位于 *** 的末尾
b
big 把 HTML <BIG>标记放置在 String 对象中的文本两端
blink 把 HTML <BLINK>标记放置在 String 对象中的文本两端
bold 把 HTML <B>标记放置在 String 对象中的文本两端
c
call 调用一个对象的一个方法,以另一个对象替换当前对象
ceil 返回大于等于其数字参数的最小整数
charAt 返回指定索引位置处的字符
charCodeAt 返回一个整数,代表指定位置上字符的 Unicode 编码
pile 把正则表达式编译为内部格式,从而执行得更快
concat 返回一个新数组,这个新数组是由两个或更多数组组合而成的
concat(String) 返回字符串值,该值包含了两个或更多个提供的字符串的连接
cos 返回数的余弦值
d
decodeURI 返回一个已编码的统一资源标识符 (URI) 的非编码形式
decodeURIComponent 返回统一资源标识符 (URI) 的一个已编码组件的非编码形式
dimensions 返回 VBArray 的维数
e
encodeURI 将文本字符串编码为一个有效的统一资源标识符 (URI)
encodeURIComponent 将文本字符串编码为一个统一资源标识符 (URI) 的一个有效组件
escape 对 String 对象编码以便它们能在所有计算机上可读
eval 检查 JScript 代码并执行
exec 用正则表达式模式在字符串中运行查找,并返回包含该查找结果的一个数组
exp 返回 e(自然对数的底)的幂
f
fixed 把HTML<TT>标记放置在 String 对象中的文本两端
floor 返回小于等于其数值参数的最大整数
fontcolor 把带有 COLOR 属性的一个 HTML <FONT>标记放置在 String 对象中的文本两端
fontsize 把一个带有 SIZE 属性的 HTML <FONT>标记放置在 String 对象中的文本的两端
fromCharCode 从一些 Unicode 字符值中返回一个字符串
g
getDate 返回 Date 对象中用本地时间表示的一个月中的日期值
getDay 返回 Date 对象中用本地时间表示的一周中的日期值
getFullYear 返回 Date 对象中用本地时间表示的年份值
getHours 返回 Date 对象中用本地时间表示的小时值
getItem 返回指定位置的项
getMilliseconds 返回 Date 对象中用本地时间表示的毫秒值
getMinutes 返回 Date 对象中用本地时间表示的分钟值
getMonth 返回 Date 对象中用本地时间表示的月份值
getSeconds 返回 Date 对象中用本地时间表示的秒钟值
getTime 返回 Date 对象中的时间值
getTimezoneOffset 返回用分钟表示的主计算机上的时间和全球标准时间 (UTC)之间的差别
getUTCDate 返回 Date 对象中用全球标准时间 (UTC)表示的日期
getUTCDay 返回 Date 对象中用全球标准时间 (UTC)表示的一周中的日期值
getUTCFullYear 返回 Date 对象中用全球标准时间 (UTC)表示的年份值
getUTCHours 返回 Date 对象中用全球标准时间 (UTC)表示的小时值
getUTCMilliseconds 返回 Date 对象中用全球标准时间 (UTC)表示的毫秒值
getUTCMinutes 返回 Date 对象中用全球标准时间 (UTC)表示的分钟值
getUTCMonth 返回 Date 对象中用全球标准时间 (UTC)表示的月份值
getUTCSeconds 返回 Date 对象中用全球标准时间 (UTC)表示的秒钟值
getVarDate 返回 Date 对象中的 VT_DATE 值
getYear 返回 Date 对象中的年份值
i
indexOf 返回 String 对象内第一次出现子字符串的字符位置
isFinite 返回一个 Boolean 值,指明所提供的数字是否是有限的
isNaN 返回一个 Boolean 值,指明提供的值是否是保留值 NaN (不是数字)
italics 把 HTML <I>标记放置在 String 对象中的文本两端
item 返回 *** 中的当前项
j
join 返回字符串值,其中包含了连接到一起的数组的所有元素,元素由指定的分隔符分隔开
l
lastIndexOf 返回 String 对象中子字符串最后出现的位置
lbound 返回在 VBArray 的指定维中所使用的最小索引值
link 把一个有 HREF 属性的 HTML 锚点放置在 String 对象中的文本两端
localeCompare 返回一个值,指出在当前的区域设置中两个字符串是否相同
log 返回数字的自然对数
match 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回
max 返回给出的零个或多个数值表达式中较大者
min 返回给出的零个或多个数值表达式中较小者
moveFirst 重新将 *** 中的当前项设置为第一项
moveNext 将 *** 中的当前项移动到下一项
p
parse 解析一个包含日期的字符串,并返回该日期与 1970 年 1 月 1 日午夜之间所间隔的毫秒数
parseFloat 返回由字符串转换得到的浮点数
parseInt 返回由字符串转换得到的整数
pop 移除数组中的最后一个元素并返回该元素
push 将新元素添加到一个数组中,并返回数组的新长度值
r
random 返回介于 0 和 1 之间的伪随机数
replace 返回根据正则表达式进行文字替换后的字符串 的拷贝
reverse 返回一个元素顺序被反转的 Array 对象
round 返回与给出的数值表达式最接近的整数
s
search 返回与正则表达式查找内容匹配的第一个子字符串的位置
setDate 设置 Date 对象中用本地时间表示的数字日期
setFullYear 设置 Date 对象中用本地时间表示的年份值
setHours 设置 Date 对象中用本地时间表示的小时值
setMilliseconds 设置 Date 对象中用本地时间表示的毫秒值
setMinutes 设置 Date 对象中用 本地时间表示的分钟值
setMonth 设置 Date 对象中用 本地时间表示的月份值
setSeconds 设置 Date 对象中用 本地时间表示的秒钟值
setTime 设置 Date 对象的日期和时间值
setUTCDate 设置 Date 对象中用全球标准时间 (UTC)表示的数值日期
setUTCFullYear 设置 Date 对象中用全球标准时间 (UTC)表示的年份值
setUTCHours 设置 Date 对象中用全球标准时间 (UTC)表示的小时值
setUTCMilliseconds 设置 Date 对象中用全球标准时间 (UTC)表示的毫秒值
setUTCMinutes 设置 Date 对象中用全球标准时间 (UTC)表示的分钟值
setUTCMonth 设置 Date 对象中用 全球标准时间 (UTC)表示的月份值
setUTCSeconds 设置 Date 对象中用全球标准时间 (UTC)表示的秒值
setYear 设置 Date 对象中的年份值
shift 移除数组中的第一个元素并返回该元素
sin 返回数字的正弦值
slice (Array) 返回一个数组的一段
slice (String) 返回字符串的片段
*** all 将 HTML 的<SMALL>标识添加到 String 对象中的文本两端
sort 返回一个元素已经进行了排序的 Array 对象
splice 从一个数组中移除一个或多个元素,如果必要,在所移除元素的位置上插入新元素,返回所移除的元素
split 将一个字符串分割为子字符串,然后将结果作为字符串数组返回
sqrt 返回数字的平方根
strike 将 HTML 的<STRIKE>标识放置到 String 对象中的文本两端
sub 将 HTML 的 <SUB>标识放置到 String 对象中的文本两端
substr 返回一个从指定位置开始的指定长度的子字符串
substring 返回位于 String 对象中指定位置的子字符串
sup 将 HTML 的<sup>标识放置到 String 对象中的文本两端
t
tan 返回数字的正切值
test 返回一个 Boolean 值,它指出在被查找的字符串中是否存在模式
toArray 返回一个由 VBArray 转换而来的标准 JScript 数组
toDateString 以字符串值的形式返回一个日期
toExponential 返回一个字符串,其中包含一个以指数记数法表示的数字
toFixed 返回一个字符串,代表一个以定点表示法表示的数字
toGMTString 返回一个日期,该日期用格林威治标准时间 (GMT) 表示并已被转换为字符串
toLocaleDateString 以字符串的形式返回与宿主环境的当前区域设置相对应的日期
toLocaleLowerCase 返回一个字符串,其中所有的字母字符都被转换为小写,同时考虑到宿主环境的当前区域设置
toLocaleString 返回一个日期,该日期使用当前区域设置并已被转换为字符串
toLocaleTimeString 以字符串的形式返回与宿主环境的当前区域设置相对应的时间
toLocaleUpperCase 返回一个字符串,其中所有的字母字符都被转换为大写,同时适应宿主环境的当前区域设置
toLowerCase 返回一个字符串,该字符串中的字母被转换为小写字母
toPrecision 返回一个字符串,其中包含一个以指数记数法或定点记数法表示的,具有指定数字位数的数字
toString 返回对象的字符串表示
toTimeString 以字符串形式返回时间
toUpperCase 返回一个字符串,该字符串中的所有字母都被转化为大写字母
toUTCString 返回一个已被转换为字符串的,用全球标准时间 (UTC)表示的日期
ubound 返回在 VBArray 的指定维中所使用的最大索引值
unescape 解码用 escape 方法进行了编码的 String 对象
unshift 将指定的元素插入数组开始位置并返回该数组
UTC 返回全球标准时间 (UTC) (或 GMT) 的 1970 年 1 月 1 日到所指定日期之间所间隔的毫秒数
valueOf 返回指定对象的原始值
javascript API中文手册chm,以及javascript参考文档教程。
1、本书是 JavaScript 语言的参考手册,包括核心语言中的对象和客户端服务器端的扩展,JavaScript 是 Netscape 跨平台的基于对象的适合于客户和服务器的脚本语言。
2、本书已经更新于 JavaScript 1.2 的新特性,其它包括了 JavaScript 支持层和样式单的属性和对象,要获得关于这些主题的详细信息,请参看 Netscape Communicator 中的动态 HTML。
3、JavaScript 是世界上最流行的脚本语言,JavaScript 是属于 web 的语言,它适用于 PC、笔记本电脑、平板电脑和移动电话,JavaScript 被设计为向 HTML 页面增加交互性,许多 HTML 开发者都不是程序员,但是 JavaScript 却拥有非常简单的语法几乎每个人都有能力将小的 JavaScript 片段添加到网页中。
一,js中对象继承js中有三种继承方式
1.js原型(prototype)实现继承
复制代码 代码如下:
<SPAN style="BACKGROUND-COLOR: #ffffff"><SPAN style="FONT-SIZE: 18px"><html>
<body>
<script type="text/javascript">
function Person(name,age){
this.name=name
this.age=age
}
Person.prototype.sayHello=function(){
alert("使用原型得到Name:"+this.name)
}
var per=new Person("马小倩",21)
per.sayHello()//输出:使用原型得到Name:马小倩
function Student(){}
Student.prototype=new Person("洪如彤",21)
var stu=new Student()
Student.prototype.grade=5
Student.prototype.intr=function(){
alert(this.grade)
}
stu.sayHello()//输出:使用原型得到Name:洪如彤
stu.intr()//输出:5
</script>
</body>
</html></SPAN></SPAN>
2.构造函数实现继承
复制代码 代码如下:
<SPAN style="FONT-SIZE: 18px"><html>
<body>
<script type="text/javascript">
function Parent(name){
this.name=name
this.sayParent=function(){
alert("Parent:"+this.name)
}
}
function Child(name,age){
this.tempMethod=Parent
this.tempMethod(name)
this.age=age
this.sayChild=function(){
alert("Child:"+this.name+"age:"+this.age)
}
}
var parent=new Parent("江剑臣")
parent.sayParent()//输出:“Parent:江剑臣”
var child=new Child("李鸣",24)//输出:“Child:李鸣 age:24”
child.sayChild()
</script>
</body>
</html></SPAN>
3.call , apply实现继承
复制代码 代码如下:
<SPAN style="FONT-SIZE: 18px"><html>
<body>
<script type="text/javascript">
function Person(name,age,love){
this.name=name
this.age=age
this.love=love
this.say=function say(){
alert("姓名:"+name)
}
}
//call方式
function student(name,age){
Person.call(this,name,age)
}
//apply方式
function teacher(name,love){
Person.apply(this,[name,love])
//Person.apply(this,arguments)//跟上句一样的效果,arguments
}
//call与aplly的异同:
//1,第一个参数this都一样,指当前对象
//2,第二个参数不一样:call的是一个个的参数列表;apply的是一个数组(arguments也可以)
var per=new Person("武凤楼",25,"魏荧屏")//输出:“武凤楼”
per.say()
var stu=new student("曹玉",18)//输出:“曹玉”
stu.say()
var tea=new teacher("秦杰",16)//输出:“秦杰”
tea.say()
</script>
</body>
</html></SPAN>
二、call和apply的用法(详细介绍)
js中call和apply都可以实现继承,唯一的一点参数不同,func.call(func1,var1,var2,var3)对应的apply写法为:func.apply(func1,[var1,var2,var3])。
JS手册中对call的解释:
复制代码 代码如下:
<SPAN style="FONT-SIZE: 18px">call 方法
调用一个对象的一个方法,以另一个对象替换当前对象。
call([thisObj[,arg1[, arg2[, [,.argN]]]]])
参数
thisObj
可选项。将被用作当前对象的对象。
arg1, arg2, , argN
可选项。将被传递方法参数序列。
说明
call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。
如果没有提供 thisObj 参数,那么 Global 对象被用作 thisObj。</SPAN>
说简单一点,这两函数的作用其实就是更改对象的内部指针,即改变对象的this指向的内容。这在面向对象的js编程过程中有时是很有用的。下面以apply为例,说说这两个函数在 js中的重要作用。如:
复制代码 代码如下:
<SPAN style="FONT-SIZE: 18px">function Person(name,age){ //定义一个类
this.name=name//名字
this.age=age //年龄
this.sayhello=function(){alert(this.name)}
}
function Print(){//显示类的属性
this.funcName="Print"
this.show=function(){
var msg=[]
for(var key in this){
if(typeof(this[key])!="function"){
msg.push([key,":",this[key]].join(""))
}
}
alert(msg.join(" "))
}
}
function Student(name,age,grade,school){//学生类
Person.apply(this,arguments)//比call优越的地方
Print.apply(this,arguments)
this.grade=grade //年级
this.school=school//学校
}
var p1=new Person("卜开化",80)
p1.sayhello()
var s1=new Student("白云飞",40,9,"岳麓书院")
s1.show()
s1.sayhello()
alert(s1.funcName)</SPAN>
另外,Function.apply()在提升程序性能方面有着突出的作用:
我们先从Math.max()函数说起,Math.max后面可以接任意个参数,最后返回所有参数中的最大值。
比如
复制代码 代码如下:
<SPAN style="FONT-SIZE: 18px">alert(Math.max(5,8)) //8
alert(Math.max(5,7,9,3,1,6)) //9
//但是在很多情况下,我们需要找出数组中最大的元素。
var arr=[5,7,9,1]
//alert(Math.max(arr)) // 这样却是不行的。NaN
//要这样写
function getMax(arr){
var arrLen=arr.length
for(var i=0,ret=arr[0]i<arrLeni++){
ret=Math.max(ret,arr[i])
}
return ret
}
alert(getMax(arr))//9
//换用apply,可以这样写
function getMax2(arr){
return Math.max.apply(null,arr)
}
alert(getMax2(arr))//9
//两段代码达到了同样的目的,但是getMax2却优雅,高效,简洁得多。
//再比如数组的push方法。
var arr1=[1,3,4]
var arr2=[3,4,5]
//如果我们要把 arr2展开,然后一个一个追加到arr1中去,最后让arr1=[1,3,4,3,4,5]
//arr1.push(arr2)显然是不行的。 因为这样做会得到[1,3,4,[3,4,5]]
//我们只能用一个循环去一个一个的push(当然也可以用arr1.concat(arr2),但是concat方法并不改变arr1本身)
var arrLen=arr2.length
for(var i=0i<arrLeni++){
arr1.push(arr2[i])
}
//自从有了Apply,事情就变得如此简单
Array.prototype.push.apply(arr1,arr2)//现在arr1就是想要的结果</SPAN>