伴随着ajax的流行,js又得到了很多人的重视,js最大的优势就是它能够对html上的所有元素进行操作,包括创建标签元素,更改元素属性等,这样就使得我们能够利用js来实现很多的动态效果,来提供给用户更强的交互性!
Js测试方法
在调试Javascript脚本的时候,如果有错误,IE的状态栏里会有个问号[点击此问号],或者弹出错误框,为了尽快找到错误,下面是常用的调试方法:
1.如果出现对象为null或找不不到对象,那就是id,name或DOM写法不对,请检查错误所在的行;
2.如果错误定位到一个函数的调用上,说明函数体有问题,到函数体里找原因。
3.为了加快速度,可以先用/* */注释屏蔽掉一部分代码,逐步检查;
4.可以增加alert(xxx)来看看变量是否得到了期望的值;
5.IE的错误报告往往不准确,比如行18错的话,有时候是19行有问题;
6.为了确保代码能够正确运行,在实在不能确定能否出现错误的时候,用try{}catch{}语句在做
其他的方法,请各位继续添加。
<script> try{ x=y; // Cause an error. } catch(e){ // Create local variable e. alert(e); // Prints "[object Error]". alert(e.number & 0xFFFF); // Prints 5009. alert(e.description); // Prints "'y' is undefined". } </script>
每一项都是js中的小技巧,但十分的实用!
1.document.write(""); 输出语句
2.JS中的注释为//
3.传统的HTML文档顺序是:document->html->(head,body)
4.一个浏览器窗口中的DOM顺序是:window->(navigator,screen,history,location,document)
5.得到表单中元素的名称和值:document.getElementById("表单中元素的ID号").name(或value)
6.一个小写转大写的JS: document.getElementById("output").value = document.getElementById("input").value.toUpperCase();
7.JS中的值类型:String,Number,Boolean,Null,Object,Function
8.JS中的字符型转换成数值型:parseInt(),parseFloat()
9.JS中的数字转换成字符型:(""+变量)
10.JS中的取字符串长度是:(length)
11.JS中的字符与字符相连接使用+号.
12.JS中的比较操作符有:==等于,!=不等于,>,>=,9b9e6a38a436758aaaa97b1071d0ed6a
49.引用一个文件式的JS:e3bc8d4cbc25908b0b861b5a26d7afd82cacc6d41bbb37262a98f745aa00fbf0
50.指定在不支持脚本的浏览器显示的HTML:2b0b25ff593c5b6c03403dd6234ffb2cf920f363442462683100636cb2662870
51.当超链和ONCLICK事件都有时,则老版本的浏览器转向a.html,否则转向b.html.例:dfsadf
52.JS的内建对象有:Array,Boolean,Date,Error,EvalError,Function,Math,Number,Object,RangeError,ReferenceError,RegExp,String,SyntaxError,TypeError,URIError
53.JS中的换行:\n
54.窗口全屏大小:3f1c4e4b6b16bbbd69b2ee476dc4f83afunction fullScreen(){ this.moveTo(0,0);this.outerWidth=screen.availWidth;this.outerHeight=screen.availHeight;}window.maximize=fullScreen;2cacc6d41bbb37262a98f745aa00fbf0
55.JS中的all代表其下层的全部元素
56.JS中的焦点顺序:document.getElementByid("表单元素").tabIndex = 1
57.innerHTML的值是表单元素的值:如 则innerHTML的值就是:how are you
58.innerTEXT的值和上面的一样,只不过不会把这种标记显示出来.
59.contentEditable可设置元素是否可被修改,isContentEditable返回是否可修改的状态.
60.isDisabled判断是否为禁止状态.disabled设置禁止状态
61.length取得长度,返回整型数值
62.addBehavior()是一种JS调用的外部函数文件其扩展名为.htc
63.window.focus()使当前的窗口在所有窗口之前.
64.blur()指失去焦点.与FOCUS()相反.
65.select()指元素为选中状态.
66.防止用户对文本框中输入文本:onfocus="this.blur()"
67.取出该元素在页面中出现的数量:document.all.tags("p(或其它HTML标记符)").length
68.JS中分为两种窗体输出:模态和非模态.window.showModaldialog(),window.showModeless()
69.状态栏文字的设置:window.status='文字',默认的状态栏文字设置:window.defaultStatus = '文字.';
70.添加到收藏夹:external.AddFavorite("http://www.dannyg.com","jaskdlf");
71.JS中遇到脚本错误时不做任何操作:window.onerror = doNothing; 指定错误句柄的语法为:window.onerror = handleError;
72.JS中指定当前打开窗口的父窗口:window.opener,支持opener.opener...的多重继续.
73.JS中的self指的是当前的窗口
74.JS中状态栏显示内容:window.status="内容"
75.JS中的top指的是框架集中最顶层的框架
76.JS中关闭当前的窗口:window.close();
77.JS中提出是否确认的框:if(confirm("Are you sure?")){alert("ok");}else{alert("Not Ok");}
78.JS中的窗口重定向:window.navigate("http://www.sina.com.cn");
79.JS中的打印:window.print()
80.JS中的提示输入框:window.prompt("message","defaultReply");
81.JS中的窗口滚动条:window.scroll(x,y)
82.JS中的窗口滚动到位置:window.scrollby
83.JS中设置时间间隔:setInterval("expr",msecDelay)或setInterval(funcRef,msecDelay)或setTimeout
84.JS中的模态显示在IE4+行,在NN中不行:showModalDialog("URL"[,arguments][,features]);
85.JS中的退出之前使用的句柄:function verifyClose(){event.returnValue="we really like you and hope you will stay longer.";}} window.onbeforeunload=verifyClose;
86.当窗体第一次调用时使用的文件句柄:onload()
87.当窗体关闭时调用的文件句柄:onunload()
88.window.location的属性: protocol(http:),hostname(www.example.com),port(80),host(www.example.com:80),pathname("/a/a.html"),hash("#giantGizmo",指跳转到相应的锚记),href(全部的信息)
89.window.location.reload()刷新当前页面.
90.window.history.back()返回上一页,window.history.forward()返回下一页,window.history.go(返回第几页,也可以使用访问过的URL)
91.document.write()不换行的输出,document.writeln()换行输出
92.document.body.noWrap=true;防止链接文字折行.
93.变量名.charAt(第几位),取该变量的第几位的字符.
94."abc".charCodeAt(第几个),返回第几个字符的ASCii码值.
95.字符串连接:string.concat(string2),或用+=进行连接
96.变量.indexOf("字符",起始位置),返回第一个出现的位置(从0开始计算)
97.string.lastIndexOf(searchString[,startIndex])最后一次出现的位置.
98.string.match(regExpression),判断字符是否匹配.
99.string.replace(regExpression,replaceString)替换现有字符串.
100.string.split(分隔符)返回一个数组存储值.
101.string.substr(start[,length])取从第几位到指定长度的字符串.
102.string.toLowerCase()使字符串全部变为小写.
103.string.toUpperCase()使全部字符变为大写.
104.parseInt(string[,radix(代表进制)])强制转换成整型.
105.parseFloat(string[,radix])强制转换成浮点型.
106.isNaN(变量):测试是否为数值型.
107.定义常量的关键字:const,定义变量的关键字:var
有用的js程序代码:
//去左空格; function ltrim(s){ return s.replace( /^\s*/, ""); } //去右空格; function rtrim(s){ return s.replace( /\s*$/, ""); } //左右空格; function trim(s){ return rtrim(ltrim(s)); } //检查非法字符 //str 要检查的字符 //badwords 非法字符 &|<>= function checkbadwords(str, badwords) { if (typeof (str) != "string" || typeof (badwords) != "string") { return (false); } for (i=0; i bad = badwords.charAt(i); for (j=0; j if (bad == str.charAt(j)) { return false; break; } } } return true; } //检查合法字符,限制只能输入的字符 //str 要检查的字符 //goodwords 合法字符 1234567890abcdefghijklmnopqrstuvwxyz function checkgoodwords(str, goodwords) { if (typeof (str) != "string" || typeof (goodwords) != "string") { return (false); } for (i=0; i this_str = str.charAt(i); for (j=0; j if (this_str == goodwords.charAt(j)) { break; } if(j==goodwords.length-1){ return false; } } } return true; }
//函 数 名:chkinteger //功能介绍:检查是否为数字 //参数说明:要检查的字符串 //返 回 值:false:不是 true:是 function chkinteger(checkStr) { var checkOK = "0123456789+-"; var allValid = true; for (i=0; i ch = checkStr.charAt(i); if (checkOK.indexOf(ch) == -1) { allValid = false; break; } if ((ch == '+' || ch == '-') && i>0) { allValid = false; break; } } return (allValid); } //函 数 名:chklength //功能介绍:检查字符串的长度 //参数说明:要检查的字符串 //返 回 值:字节长度值 function chklength(checkStr) { var n = 0; for (i=0; i chcode = checkStr.charCodeAt(i); if (chcode>=0 && chcode<=255) { n++; } else { n += 2; } } return (n); }
以上就是js入门基础编程的全部内容了,感谢大家的阅读!
以上是js入门语法基础篇介绍的详细内容。更多信息请关注PHP中文网其他相关文章!