(1) 在编写JS代码时,通常将函数放入<head>部分中,或者放在页面的底部。目的:这样可以将<script>中的函数放在一块,不会干扰页面内容的加载。
(2) 在JS中,alert()函数并不常使用,但是它对于代码测试非常方便。
(3) document.write()仅仅向文档输出内容,如果在文档已完成加载后执行该函数,整个HTML页面将被覆盖。
(4)Javascript对大小写敏感
例:当编写JavaScript语句时,函数getElementById与getElementbyID是不同的
(5)把注释放到代码行的结尾处
(6)JS 变量保存数据类型:向变量分配文本值,应该用双引号或者单引号包围这个值
向变量赋的值是数值时,不要使用引号,如果使用引号包围数值,该值会被当做文本处理。
(7)JS的数据类型有:字符串(单引号或双引号)、数字(可以带小数点也可以不带)、布尔(true或false)、数组、对象(由花括号分隔,括号内部:对象的属性以名称和值对的形式(name:value))、Null、Undefined(表示变量不含有值,可以将变量的值设置为null来清空变量)
(8)在JS中,对象(字符串、数字、数组、日期)是拥有属性和方法的数据
<!DOCTYPE html>
<html>
<head>
<title></title>
<script type="text/javascript">
var person;
var car="BMW";
document.write(person + "<br/>"); //undefined
document.write(car + "<br/>"); //BMW
document.write(car.length + "<br/>") //3
var person=null;
var car=null;
var carname=new String; //new 声明变量类型
carname="bus";
var txt="Hello"; //字符串
document.write(person + "<br/>"); //null
document.write(car + "<br/>"); //null
document.write(txt.length + "<br/>"); //字符串对象拥有内建的属性length 5
document.write(carname + "<br/>"); //bus
document.write(carname.length + "<br/>"); //3
document.write(carname.indexOf(2) + "<br/>"); //-1
document.write(carname.indexOf("us") + "<br/>"); //1
document.write(carname.replace("b","dd") + "<br/>"); //ddus
document.write(carname.search("u") + "<br/>"); //1
text="My first Page!";
var x= text.length;
document.write(x + "<br/>"); //14
a="HELLO";
var y=a.toLowerCase();
document.write(y + "<br/>"); //hello
b="hello";
var z=b.toUpperCase();
document.write(z + "<br/>"); //HELLO
var dog=new Object();
dog.name="HAHA";
dog.sex="female";
dog.age=10;
dog.hair="brown";
document.write(dog.name + " is " + dog.age +" and its hair is " + dog.hair + "."+"<br/>"); //HAHA is 10 and its hair is brown.
</script>
</head>
<body>
</body>
</html>
(9) JS 运算符:把数字和字符串相加,结果将成为字符串。
x=5+"5"; // x=55
(10) 比较和逻辑运算符用于测试true或false
(11) JS switch...case... 使用break来阻止代码自动往下一个case运行 default 规定不存在的事情
(12) JS for/in 语句循环遍历对象的属性
(13) do/while 循环至少会执行一次 注:增加条件中所用变量的值,否则循环永远不会结束!
(14) break 语句可用于跳出循环 ,会继续执行该循环之后的代码
continue 用于逃过循环中的一个迭代 ,会继续该循环中的下一个迭代
*****使用 Js 标签
(15) 改变HTML 元素的内容(innerHTML) document.getElementById(id).innerHTML=new txt;
改变HTML元素的样式(CSS) document.getElementById(id).style.property=new style;
对HTML DOM事件作出反应 http://www.w3school.com.cn/js/js_htmldom_events.asp
添加或删除HTML元素 添加和删除节点(HTML元素):添加新元素,必须创建该元素(元素节点),然后向一个已存在的元素追加该元素; 删除HTML元素,必须首先获得该元素的父元素
(16) http://blog.csdn.net/xingfei_work/article/details/78962991 JS面试题总结
(17)JS 的逻辑对象 逻辑值(true或false)
创建Boolean对象 var myBoolean=new Boolean() 如果逻辑对象无初始值或者其值为0、-0、null、“”、false、undefined或者NaN,那么对象的值为false。否则,其值true(即使当自变量为字符串“false”时)
结果图:
(18)JS Math(算数)对象 round():对一个数四舍五入
random():返回0至1之间的随机数
max()/min():返回两个给定的数中的较大的数/较小的数
(19)正则表达式RegExp:该对象的方法test()测试字符串的指定值,返回值为true或false、exec()返回值为被找到的值,若没有找到,则返回null、compile()改变检索模式
结果图:
(20) window 对象:A.三种方式确定浏览器窗口的尺寸 window.innerHeight / innerWidth、document.documentElement.clientHeight/clientWidth、 document.body.clientHeight/clientWidth
B.window.open() 打开新窗口
window.close() 关闭当前窗口
window.moveTo() 移动当前窗口
window.resizeTo() 调整当前窗口的尺寸
C.有关用户屏幕的信息:window.screen.availWidth/availHeight
D.当前页面的地址 https://mbd.baidu.com/newspage/data/landingsupercontext=%7B%22nid%22%3A%22news_6281270246842322902%22%7D&n_type=0&p_from=1
E.JS PopupAlert : 警告框 alert("hello");
确认框 confirm("hello");
提示框:prompt("my name is","zxt");
F.JS 计时事件 setTimeout()未来某时执行代码、clearTmeout()取消计时
结果图:
G.Cookie用来识别用户