您的位置:首页 > Web前端 > JavaScript

【JS】JavaScript高级程序设计笔记 第2章 ECMAScript基础

2011-04-04 10:06 741 查看
alert(typeof sText); //返回类型string Number类型 var iNum = 070; //八进制的70 var iNum = 0xAB; //十六进制的AB var fNum = 3.25e5 //科学计数法325000 var fNum = 3.25-e5 //科学计数法0.0000325 专门标示无穷大的值infinity Number.POSITIVE_INFINITY = infinity; Number.NEGATIVE_INFINITY = -infinity; var iResult = iNum*some_really_large_number;
if (isFinite(iResult)) { //判断是否为有限数字
alert("有限数字");
}else {
alert("无限数字");
} alert(isNaN("blue")); //非数(not a number)成立返回true alert(isNaN("123")); //非数不成立,返回false String类型 字符字面量 \n
换行 \t
制表符 \b
空格 \r
回车 \f
换页符 \\
反斜杠 \'
单引号 \"
双引号 \0nnn
八进制代码nnn(n是0到7中的一个八进制数字)表示的字符 \xnn
十六进制代码nn(n是0到F中的一个十六进制数字)表示的字符 \unnn
十六进制代码nnn(n是0到F中的一个十六进制数字)表示的字符 字符串的toString()方法,将任何类型转化为字符串 var iNum=10;
iNum.toString(); //"10"
iNum.toString(2); //"1010"
iNum.toString(8); //"12"
iNum.toString(16); //"A" parseInt() 与 parseFloat() 将非数字的原始值转换成数字,从左边第一位数字开始判断,如原始值中掺杂其他字符,则判断到当前位置后停止判断,可后接参数指定原始值的进制 (P19) 例子:
var iNum = parseInt("123blue"); //返回 123
var iNum = parseInt("0xA"); //返回 10
var iNum = parseInt("22.5"); //返回 22
var iNum = parseInt("NaN"); //返回 NaN var iNum = parseInt("11",2); //将原始值看做2进制,返回十进制 3
var iNum = parseInt("11",8); //将原始值看做8进制,返回十进制 9
var iNum = parseInt("11",10); //将原始值看做10进制,返回十进制 11 如十进制前包含0,如01234,为防止将其当成8进制数处理,最好加参数
var iNum = parseInt("01234",10); //返回1234 var iNum = parseFloat("22.34.5"); //返回 22.34 其它同parseInt() Boolean() 强制类型转换 当要转换的值至少有一个字符串、非0数字或对象时,Boolean()返回true。如果该值是空字符串、数字0、undefined或null,它将返回false。 例子:
var b1 = Boolean("");
var b1 = Boolean("null");
var b1 = Boolean("0"); //以上三个返回值均为false var b1 = Boolean("hi");
var b1 = Boolean("100");
var b1 = Boolean("new Object()"); //以上三个返回值均为true Number() 强制类型转换 与parseInt和parseFloat类似,只是它转换整个值,而不是部分值,当整个值无法转换时,Number()将返回NaN。 例子:
Number(false); //返回0
Number(null); //返回0
Number(undefined); //NaN
Number(new Object); //返回NaN
Number("5.5"); //返回5.5
Number("5.6.7"); //返回NaN String() 强制类型转换 与toString()不同在于,对null或undefined值强制转换可以生成字符串而不引发错误 例子:
var s1 = String(null); //"null" var oNull = null;
var s2 = oNull.toString(); //不会转换,而且会产生错误 toFixed() ,toExponential() toFixed()方法返回具有指定小数的数字的字符串标示,小数范围0-20,超出范围的值会引发错误(P24) 例子:
var oNumObj = new Number(99);
alert( oNumObj.toFixed(2) ); //输出"99.00" toExponential()方法返回用科学计数法表示的字符串形式,参数为指定数字的小数,会根据参数对原数字取近似值(P24) 例子:
var oNumObj = new Number(99);
alert( oNumObj.toExponential(1) ); //输出"9.9e+1" toPrecision()方法返回最有意义的形式,他的参数表示数的数字总是,不包括指数(P24) 例子:
var oNumObj = new Number(99);
alert( oNumObj.toPrecision(1) ); //输出"1e+2",近似到100,然后取1位数字,不包括e WIth with语句用于设置代码在特大对象中的作用域(P50) 例子:
var sMessage = "hello";
with ( sMessage ) {
alert ( toUpperCase() ); //toUpperCase被with指定为sMessage,所以输出"hello"
} charAt(),charCodeAt() 根据指定的位置,查找字符串的单个字符(P25) 例子:
var sMessage = "hello";
alert ( sMessage.charAt(1) ); //输出"e"
var sMessage = "hello";
alert ( sMessage.charCodeAt(1) ); //输出"101"
. concat() 把一个或多个字符串连接到String对象的原始值上,该方法返回的是String原始值,保持原始值不变(P25) 例子:
var s1 = "hello";
var s2 = s1.concat(" world");
alert ( s2 ); //输出"hello world"
实际中常见的是用加号连接字符串
var s1 = "a";
var s2 = s1+"b";
alert(s2); //输出"ab"
. indexOf(),lastIndexOf() 返回指定字符串在另一个字符串中的位置,如没找到,则返回-1。两者不同之处在于indexOf()在字符串开头开始检索,而lastIndexOf()则是从字符串结尾开始检索(P26) 例子:
var s1 = "abcdcba";
alert ( s1.indexOf("a") ); //输出位置"0"
alert ( s1.lastIndexOf("a") ); //输出位置"6"
实际中可以用某些特殊字符串当做标记,将需要的内容放在两个标记中间,然后用该方法取得需要内容在整个文档中包含的前后位置,用slice()取得内容。 slice(),substring() 接受1到2个参数,返回由参数指定截取的字符串,第一关参数是子串的起始位置,第二个参数是子串终止前的位置,也就是说,终止位置处的字符串不包括在返回值内,与concat()一样,不改变String对象自身的值。它们只返回原始的String值。保持String对象不变。(P27) 例子:
当参数为正值,slice()与substring()是一样的.
var s1 = "hello world";
alert ( s1.slice(3) ); //输出位置"lo world"
alert ( s1.substring(3) ); //输出位置"lo world"
alert ( s1.slice(3,7) ); //输出位置"lo w"
alert ( s1.substring(3,7) ); //输出位置"lo w"
当参数为负数,slice()与substring()有如下区别,slice()参数为负时,会变成从后边数,而substring会简单把负数变成0.
var s1 = "hello world";
alert ( s1.slice(-3) ); //输出位置"rld"
alert ( s1.substring(-3) ); //输出位置"hello world"
alert ( s1.slice(3,-4) ); //输出位置"lo w"
alert ( s1.substring(3,-4) ); //输出位置"hel"
. toUpperCase(),tolowerCase() 转换大小写。(P28) 例子:
var s1 = "AAbbcc";
alert ( s1.toUpperCase() ); //输出位置"AABBCC"
alert ( s1.toLowerCase() ); //输出位置"aabbcc"
. arguments() 在函数中,无需明确指出参数名,就能访问它们。第一个参数可以用arguments[0]访问,第二个参数可以用 arguments[1]访问,依次类推,无需声明参数,无需指定参数个数,ECMAScript最多接受25个参数而不会引发错误。任何遗漏的参数都会以undefine传递给函数,多余的参数将被忽略(P53) 例子:
function sum () {
var s=0;
for(i=0;i<arguments.length;i++){
s += arguments[i]
}
return s; //返回的值为10
}
var a = sum(1,2,3,4);
alert(a); join() 给数组加上自定义的分隔符并输出连接后的字符串(P62) 例子:
var aColor = ["red","green","blue"];
alert(aColor.join(",")); //返回"red,green,blue",与用aColor.toString()或aColor.valueOf()返回相同
alert(aColor.join("-spring-")); //返回"red-spring-green-spring-blue" split() 指定分隔符,按此分隔符将字符串转成数组.....如果把空字符串指定成分隔符,split()方法将返回数组中每个项是字符串的字符(P62) 例子:
var aColor = "red,green,blue";
alert(aColor.split(",")); //返回数组"red","green","blue"
var aColor = "red";
alert(aColor.split("")); //空字符为分隔符时,返回数组"r","e","d" setTimeout() , setInterval() , clearTimeout() , clearInterval() 指定按时间延迟触发,第一个触发一次,第二关循环触发(P127) 例子:
<script type="text/javascript">
function say(){
alert("123");
}
function tip() {
aaa = setTimeout("say()",2000);
}
</script>
<div id="box">
<p><a href="index.aspx" onmouseover="tip()" onmouseout="clearTimeout(aaa);">点这直接进入</a></p>
</div> BOM中document对象 的 属性 lastModified 页面上次修改日期
referrer 浏览器历史中后退一个位置的URL
title 网页<title>中显示的文本 可读写
URL
当前载入的页面的URL 可读写 (P130) 例子:
document.title = "可以更改标题";
document.URL = http://hi.baidu.com/adsiion ; //可以跳转到指定页,也可以获得当前页地址 BOM中document对象 的 集合 anchors 页面中所有锚点的集合
applets 页面中所有applet的集合
embeds 页面中所有嵌入式对象的集合,由<embed />标签表示
forms 页面中所有表单的集合
images 页面中所有图像的集合
links 页面中所有链接的集合
例子:
document.images[0] = "0.gif";
document.images["imgName"] = "0.gif";
document.forms[0]
document.forms["formName"] BOM中document对象 的 方法 write() 页面文档中写入字符串
writeln() 页面文档中写入字符串, 并加入\n
注意: 要插入内容属性,必须在完全载入页面前调用write()和writeln()方法。如果任何一个方法是在页面载入后调用的,它将抹去页面的内容,显示指定的内容。
open() 打开文档进行编写
close() 关闭用open()打开的文档
例子:
var oNewWin = window.open("about:blank", "newwindow", "height=150,width=300,top=10,left=10,resizeable=yes");
oNewWin.document.open();
oNewWin.document.write("<html><head><title>新窗口</title></head>");
oNewWin.document.write("<body>这是一个新窗口</body></html>");
oNewWin.document.close(); location对象 获取操作全部或部分地址,常用的href(),reload()从缓存重载,reload(true)从服务器端重载 (P132) 详细参见: http://www.w3school.com.cn/htmldom/dom_obj_location.asp navigator对象 查看浏览器信息 http://www.w3school.com.cn/htmldom/dom_obj_navigator.asp screen对象 查看用户屏幕信息 availHeight 窗口可以使用的屏幕高度,其中包括操作系统元素(入windows的工具栏)需要的空间 colorDepth 显示器颜色位数,一般为16或32位 height 屏幕的高度 例子:
window.moveTo(0,0);
window.resizeTo(screen.availHeight , screen.availWidth); //将窗口拉直全屏
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: