JavaScript基础知识

《JavaScript就这么回事》
来源:网络/二次编辑:Fl基础理论大师
这篇贴子在网上广为流传,今天拿来和大家一起分享
对于AS学习者来说,学习JS会相对容易很多,因为他们的语法和关键字都很像

前言:

    有些时候你精通一门语言,但是会发现你其实整天在和其它语言打交道,也许你以为这些微不足道,不至于影响你的开发进度,但恰恰是这些你不重视的东西会浪费你很多时间,我一直以为我早在几年前就已经精通JavaScript了,直到目前,我才越来越觉得JavaScript远比我想象的复杂和强大,我开始崇拜它,就像崇拜所有OOP语言一样~
    趁着节日的空隙,把有关JavaScript的方法和技巧整理下,让每个在为JavaScript而烦恼的人明白,JavaScript就这么回事!并希望JavaScript还可以成为你的朋友,让你豁然开朗,在项目中更好的应用~

基础知识:HTML

请注意: 为中凡用到“JavaScript”处,要把“ ”改为 " "才能正常使用

JavaScript就这么回事1:基础知识

1 创建脚本块
<script language=“JavaScript”>
JavaScript code goes here
</script>

2 隐藏脚本代码
<script language=“JavaScript”>
<!--
document.write("Hello");
// -->
</script>

在不支持JavaScript的浏览器中将不执行相关代码
3 浏览器不支持的时候显示
<noscript>
Hello to the non-JavaScript browser.
</noscript>  

4 链接外部脚本文件
<script language=“JavaScript” src="filename.js"></script>

5 注释脚本
// This is a comment
document.write("Hello");

6 输出到浏览器
document.write("<strong>Hello</strong>");

7 定义变量
var myVariable = "some value";

8 字符串相加
var myString = "String1" + "String2";

9 字符串搜索
<script language=“JavaScript”>
var myVariable = "Hello there";
var therePlace = myVariable.search("there");
document.write(therePlace);
</script>

10 字符串替换
thisVar.replace("Monday","Friday");  

11 格式化字串
<script language=“JavaScript”>
var myVariable = "Hello there";
document.write(myVariable.big() + "<br>");
document.write(myVariable.blink() + "<br>");
document.write(myVariable.bold() + "<br>");
document.write(myVariable.fixed() + "<br>");
document.write(myVariable.fontcolor("red") + "<br>");
document.write(myVariable.fontsize("18pt") + "<br>");
document.write(myVariable.italics() + "<br>");
document.write(myVariable.small() + "<br>");
document.write(myVariable.strike() + "<br>");
document.write(myVariable.sub() + "<br>");
document.write(myVariable.sup() + "<br>");
document.write(myVariable.toLowerCase() + "<br>");
document.write(myVariable.toUpperCase() + "<br>");
var firstString = "My String";
var finalString = firstString.bold().toLowerCase().fontcolor("red");
</script>

12 创建数组
<script language=“JavaScript”>
var myArray = new Array(5);
myArray[0] = "First Entry";
myArray[1] = "Second Entry";
myArray[2] = "Third Entry";
myArray[3] = "Fourth Entry";
myArray[4] = "Fifth Entry";
var anotherArray = new Array("First Entry","Second Entry","Third Entry","Fourth Entry","Fifth Entry");
</script>

13 数组排序
<script language=“JavaScript”>
var myArray = new Array(5);
myArray[0] = "z";
myArray[1] = "c";
myArray[2] = "d";
myArray[3] = "a";
myArray[4] = "q";
document.write(myArray.sort());
</script>

14 分割字符串
<script language=“JavaScript”>
var myVariable = "a,b,c,d";
var stringArray = myVariable.split(",");
document.write(stringArray[0]);
document.write(stringArray[1]);
document.write(stringArray[2]);
document.write(stringArray[3]);
</script>

15 弹出警告信息
<script language=“JavaScript”>
window.alert("Hello");
</script>

16 弹出确认框
<script language=“JavaScript”>
var result = window.confirm("Click OK to continue");
</script>  

17 定义函数
<script language=“JavaScript”>
function multiple(number1,number2) {
var result = number1 * number2;
return result;
}
</script>

18 调用JS函数
<a href="#" onClick="functionName()">Link text</a>
<a href="javascript:functionName()">Link text</a>

19 在页面加载完成后执行函数
<body onLoad="functionName()">
Body of the page
</body>

20 条件判断
<script>
var userChoice = window.confirm("Choose OK or Cancel");
var result = (userChoice == true) ? "OK" : "Cancel";
document.write(result);
</script>

21 指定次数循环
<script>
var myArray = new Array(3);
myArray[0] = "Item 0";
myArray[1] = "Item 1";
myArray[2] = "Item 2";
for (i = 0; i < myArray.length; i++) {
document.write(myArray[i] + "<br>");
}
</script>

22 设定将来执行
<script>
function hello() {
window.alert("Hello");
}
window.setTimeout("hello()",5000);
</script>

23 定时执行函数
<script>
function hello() {
window.alert("Hello");
window.setTimeout("hello()",5000);
}
window.setTimeout("hello()",5000);
</script>

24 取消定时执行
<script>
function hello() {
window.alert("Hello");
}
var myTimeout = window.setTimeout("hello()",5000);
window.clearTimeout(myTimeout);
</script>

25 在页面卸载时候执行函数
<body onUnload="functionName()">
Body of the page
</body>

JavaScript就这么回事2:浏览器输出

26 访问document对象
<script language=“JavaScript”>
var myURL = document.URL;
window.alert(myURL);
</script>

27 动态输出HTML
document.write("<p>Here is some information about this document:</p>");
document.write("<ul>");
document.write("<li>Referring Document: " + document.referrer + "</li>");
document.write("<li>Domain: " + document.domain + "</li>");
document.write("<li>URL: " + document.URL + "</li>");
document.write("</ul>");
</script>

28 输出换行
document.writeln("<strong>a</strong>");
document.writeln("b");

29 输出日期
<script language=“JavaScript”>
var thisDate = new Date();
document.write(thisDate.toString());
</script>

30 指定日期的时区
<script language=“JavaScript”>
var myOffset = -2;
var currentDate = new Date();
var userOffset = currentDate.getTimezoneOffset()/60;
var timeZoneDifference = userOffset - myOffset;
currentDate.setHours(currentDate.getHours() + timeZoneDifference);
document.write("The time and date in Central Europe is: " + currentDate.toLocaleString());
</script>

31 设置日期输出格式
<script language=“JavaScript”>
var thisDate = new Date();
var thisTimeString = thisDate.getHours() + ":" + thisDate.getMinutes();
var thisDateString = thisDate.getFullYear() + "/" + thisDate.getMonth() + "/" + thisDate.getDate();
document.write(thisTimeString + " on " + thisDateString);
</script>

32 读取URL参数
<script language=“JavaScript”>
var urlParts = document.URL.split("?");
var parameterParts = urlParts[1].split("&");
for (i = 0; i < parameterParts.length; i++) {
var pairParts = parameterParts[i].split("=");
var pairName = pairParts[0];
var pairValue = pairParts[1];
document.write(pairName + " :" +pairValue );
}
</script>

你还以为HTML是无状态的么?
33 打开一个新的document对象
<script language=“JavaScript”>
function newDocument() {
document.open();
document.write("<p>This is a New Document.</p>");
document.close();
}
</script>

34 页面跳转
<script language=“JavaScript”>
window.location = "http://www.liu21st.com/";
</script>

35 添加网页加载进度窗口
<html>
<head>
<script language=“JavaScript”>
var placeHolder = window.open("holder.html","placeholder","width=200,height=200");
</script>
<title>The Main Page</title>
</head>
<body onLoad="placeHolder.close()">
<p>This is the main page</p>
</body>
</html>

JavaScript就这么回事3:图像

36 读取图像属性
<img src="image1.jpg" name="myImage">
<a href="#" onClick="window.alert(document.myImage.width)">Width</a>

37 动态加载图像
<script language=“JavaScript”>
myImage = new Image;
myImage.src = "image1.jpg";
</script>

38 简单的图像替换
<script language=“JavaScript”>
rollImage = new Image;
rollImage.src = "rollImage1.jpg";
defaultImage = new Image;
defaultImage.src = "image1.jpg";
</script>
<a href="#" onMouseOver="document.myImage.src = rollImage.src" onMouseOut="document.myImage.src = defaultImage.src">
<img src="image1.jpg" name="myImage" width=100 height=100 border=0>

39 随机显示图像
<script language=“JavaScript”>
var imageList = new Array();
imageList[0] = "image1.jpg";
imageList[1] = "image2.jpg";
imageList[2] = "image3.jpg";
imageList[3] = "image4.jpg";
var imageChoice = Math.floor(Math.random() * imageList.length);
document.write("<img src=" + imageList[imageChoice] + ">");
</script>

40 函数实现的图像替换
<script language=“JavaScript”>
var source = 0;
var replacement = 1;
var rollImage1 = createRollOver("image1.jpg","rollImage1.jpg");
function createRollOver(originalImage,replacementImage) {
var imageArray = new Array();
imageArray[source] = new Image;
imageArray[source].src = originalImage;
imageArray[replacement] = new Image;
imageArray[replacement].src = replacementImage;
return imageArray;
}
</script>
<a href="#" onMouseOver="document.myImage1.src = rollImage1[replacement].src" onMouseOut="document.myImage1.src = rollImage1[source].src">
<img src="image1.jpg" width=100 name="myImage1" border=0>
</a>

41 创建幻灯片
<script language=“JavaScript”>
var imageList = new Array;
imageList[0] = new Image;
imageList[0].src = "image1.jpg";
imageList[1] = new Image;
imageList[1].src = "image2.jpg";
imageList[2] = new Image;
imageList[2].src = "image3.jpg";
imageList[3] = new Image;
imageList[3].src = "image4.jpg";
function slideShow(imageNumber) {
document.slideShow.src = imageList[imageNumber].src;
imageNumber ++
if (imageNumber < imageList.length) {
window.setTimeout("slideShow(" + imageNumber + ")",3000);
}
}
</script>
</head>
<body onLoad="slideShow(0)">
<img src="image1.jpg" width=100 name="slideShow">

42 随机广告图片
<script language=“JavaScript”>
var imageList = new Array();
imageList[0] = "image1.jpg";
imageList[1] = "image2.jpg";
imageList[2] = "image3.jpg";
imageList[3] = "image4.jpg";
var urlList = new Array;
urlList[0] = "http://some.host/";
urlList[1] = "http://another.host/";
urlList[2] = "http://somewhere.else/";
urlList[3] = "http://right.here/";
var imageChoice = Math.floor(Math.random() * imageList.length);
document.write("<a href=" + urlList[imageChoice] + "><img src=" + imageList[imageChoice] + "></a>");
</script>

JavaScript就这么回事4:表单
还是先继续写完JS就这么回事系列吧~

43 表单构成
<form method="post" action="target.html" name="thisForm">
<input type="text" name="myText">
<select name="mySelect">
<option value="1">First Choice</option>
<option value="2">Second Choice</option>
</select>
<br>
<input type="submit" value="Submit Me">
</form>

44 访问表单中的文本框内容
<form name="myForm">
<input type="text" name="myText">
</form>
<a href="#" onClick="window.alert(document.myForm.myText.value)">Check Text Field</a>

45 动态复制文本框内容
<form name="myForm">
Enter some Text: <input type="text" name="myText"><br>
Copy Text: <input type="text" name="copyText">
</form>
<a href="#" onClick="document.myForm.copyText.value = document.myForm.myText.value">Copy Text Field</a>

46 侦测文本框的变化
<form name="myForm">
Enter some Text: <input type="text" name="myText" onChange="alert(this.value)">
</form>

47 访问选中的Select
<form name="myForm">
<select name="mySelect">
<option value="First Choice">1</option>
<option value="Second Choice">2</option>
<option value="Third Choice">3</option>
</select>
</form>
<a href="#" onClick="alert(document.myForm.mySelect.value)">Check Selection List</a>

48 动态增加Select项
<form name="myForm">
<select name="mySelect">
<option value="First Choice">1</option>
<option value="Second Choice">2</option>
</select>
</form>
<script language=“JavaScript”>
document.myForm.mySelect.length++
document.myForm.mySelect.options[document.myForm.mySelect.length - 1].text = "3";
document.myForm.mySelect.options[document.myForm.mySelect.length - 1].value = "Third Choice";
</script>

49 验证表单字段
<script language=“JavaScript”>
function checkField(field) {
if (field.value == "") {
window.alert("You must enter a value in the field");
field.focus();
}
}
</script>
<form name="myForm" action="target.html">
Text Field: <input type="text" name="myField" onBlur="checkField(this)">
<br><input type="submit">
</form>

50 验证Select项
function checkList(selection) {
if (selection.length == 0) {
window.alert("You must make a selection from the list.");
return false;
}
return true;
}

51 动态改变表单的action
<form name="myForm" action="login.html">
Username: <input type="text" name="username"><br>
Password: <input type="password" name="password"><br>
<input type="button" value="Login" onClick="this.form.submit()">
<input type="button" value="Register" onClick="this.form.action = 'register.html'; this.form.submit()">
<input type="button" value="Retrieve Password" onClick="this.form.action = 'password.html'; this.form.submit()">
</form>

52 使用图像按钮
<form name="myForm" action="login.html">
Username: <input type="text" name="username"><br>
Password: <input type="password" name="password"><br>
<input type="image" src="login.gif" value="Login">
</form>

53 表单数据的加密
<script language=“JavaScript”>
function encrypt(item) {
var newItem = "";
for (i=0; i < item.length; i++) {
newItem += item.charCodeAt(i) + ".";
}
return newItem;
}
function encryptForm(myForm) {
for (i=0; i < myForm.elements.length; i++) {
myForm.elements[i].value = encrypt(myForm.elements[i].value);
}
}
</script>
<form name="myForm" onSubmit="encryptForm(this); window.alert(this.myField.value)">
Enter Some Text: <input type="text" name="myField"><input type="submit">
</form>

JavaScript就这么回事5:窗口和框架

54 改变浏览器状态栏文字提示
<script language=“JavaScript”>
window.status = "A new status message";
</script>

55 弹出确认提示框
<script language=“JavaScript”>
var userChoice = window.confirm("Click OK or Cancel");
if (userChoice) {
document.write("You chose OK");
} else {
document.write("You chose Cancel");
}
</script>

56 提示输入
<script language=“JavaScript”>
var userName = window.prompt("Please Enter Your Name","Enter Your Name Here");
document.write("Your Name is " + userName);
</script>

57 打开一个新窗口
<script language=“JavaScript”>
window.open("http://www.liu21st.com/","myNewWindow");
</script>

58 设置新窗口的大小
<script language=“JavaScript”>
window.open("http://www.liu21st.com/","myNewWindow","height=300,width=300");
</script>

59 设置新窗口的位置
<script language=“JavaScript”>
window.open("http://www.liu21st.com/","myNewWindow","height=300,width=300,left=200,screenX=200,top=100,screenY=100");
</script>

60 是否显示工具栏和滚动栏
<script language=“JavaScript”>
window.open("http://www.x-force.cn/", toolbar=0 , menubar=0);
</script>

61 是否可以缩放新窗口的大小
<script language=“JavaScript”>
window.open("http://www.liu21st.com/", "myNewWindow", "resizable=1");
</script>

62 加载一个新的文档到当前窗口
<a href="#" onClick="document.location = '125a.html' ">Open New Document</a>

63 设置页面的滚动位置
<script language=“JavaScript”>
if (document.all) {
//如果是IE浏览器则使用scrollTop属性
document.body.scrollTop = 200;
}
else {
//如果是NetScape浏览器则使用pageYOffset属性
window.pageYOffset = 200;
}
</script>

64 在IE中打开全屏窗口
<a href="#" onClick="window.open("http://www.juxta.com/","newWindow",'fullScreen=yes')">Open a full-screen window</a>

65 新窗口和父窗口的操作
<script language=“JavaScript”>
//定义新窗口
var newWindow = window.open("128a.html","newWindow");
newWindow.close();
//在父窗口中关闭打开的新窗口
</script>
//在新窗口中关闭父窗口
window.opener.close()

66 往新窗口中写内容
<script language=“JavaScript”>
var newWindow = window.open("","newWindow");
newWindow.document.open();
newWindow.document.write("This is a new window");
newWIndow.document.close();
</script>

67 加载页面到框架页面
<frameset cols="50%,*">
<frame name="frame1" src="135a.html">
<frame name="frame2" src="about:blank">
</frameset>
//在frame1中加载frame2中的页面
parent.frame2.document.location = "135b.html";

68 在框架页面之间共享脚本
<script language=“JavaScript”>
function doAlert() {
window.alert("Frame 1 is loaded");
}
</script>
<!--那么在frame2中可以如此调用该方法-->
<body onLoad="parent.frame1.doAlert()">
This is frame 2.
</body>

69 数据公用
可以在框架页面定义数据项,使得该数据可以被多个框架中的页面公用
<script language=“JavaScript”>
var persistentVariable = "This is a persistent value";
</script>
<frameset cols="50%,*">
<frame name="frame1" src="138a.html">
<frame name="frame2" src="138b.html">
</frameset>
这样在frame1和frame2中都可以使用变量persistentVariable

70 框架代码库
根据以上的一些思路,我们可以使用一个隐藏的框架页面来作为整个框架集的代码库
<frameset cols="0,50%,*">
<frame name="codeFrame" src="140code.html">
<frame name="frame1" src="140a.html">
<frame name="frame2" src="140b.html">
</frameset>

时间: 2024-08-20 18:25:39

JavaScript基础知识的相关文章

extjs4-关于 Extjs 4.X中 Ext.Function源码中的一些问题, 关于javascript基础知识的

问题描述 关于 Extjs 4.X中 Ext.Function源码中的一些问题, 关于javascript基础知识的 Ext.Function中定义了如下一个叫做flexSetter的函数,其作用看看就明白 问题在于 其中做a===null判断的地方为什么不用a==null呢? 源码如下: Ext.Function = { /** * A very commonly used method throughout the framework. It acts as a wrapper around

javascript基础知识分享之类与函数化_基础知识

1.对象适合于收集和管理数据,容易形成树型结构. Javascript包括一个原型链特性,允许对象继承另一对象的属性.正确的使用它能减少对象的初始化时间和内存消耗. 2.函数它们是javascript的基础模块单元,用于代码复用.信息隐藏和组合调用.函数用于指定对象的行为.一般来说,编程就是将一组需求分解成一组函数和数据结构的技能. 3.模块我们可以使用函数和闭包来构造模块.模块是一个提供接口却隐藏实现状态和实现的函数或对象. 1.自定义类型--构造函数模式(伪类模式) 在基于类的系统中,对象是

Javascript基础知识盲点总结之函数_javascript技巧

函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块.本文重点给大家介绍js基础知识盲点总结之函数. 一.函数中的arguments对象 每个函数内部都有一个arguments,它能返回函数所接受的所有参数 注意:argumens接收的是实参 如下是利一个利用arguments特性编写的求和函数: function sumOnSteroids(){ var I, res = 0; var number_of_params = arguments.length; for(I = 0; I <

JavaScript基础知识及常用方法总结_javascript技巧

JAVASCRIPT是AJAX技术中不可或缺的一部分,所以想学好AJAX以及现在流行的AJAX框架,学好JAVASCRIPT是最重要的. 一.基础知识: 1.document.write(""); 输出语句 2.JS中的注释为// 3.传统的HTML文档顺序是:document->html->(head,body) 4.一个浏览器窗口中的DOM顺序是:window->(navigator,screen,history,location,document) 5.得到表单

需要牢记的JavaScript基础知识_基础知识

声明(Declarations) undefined值在布尔类型环境中会被当作false. 数值类型环境中undefined值会被转换为NaN. 对一个空变量求值时,空值 null 在数值类型环境中会被当作0来对待,而布尔类型环境中会被当作false JavaScript 变量感觉上是被"提升"或移到了所有函数和语句之前.提升后的变量将返回 undefined 值,所以即使在使用或引用某个变量之后存在声明和初始化操作,这个被提升的引用仍将得到 undefined 值. 由于存在变量声明

JAVA AJAX教程第二章-JAVASCRIPT基础知识

开篇:JAVASCRIPT是AJAX技术中不可或缺的一部分,所以想学好AJAX以及现在流行的AJAX框架,学好JAVASCRIPT是最重要的.这章我给大家整理了一些JAVASCRIPT的基础知识.常用代码和事件汇总. 一.基础知识: 1.document.write(""); 输出语句 2.JS中的注释为// 3.传统的HTML文档顺序是:document->html->(head,body) 4.一个浏览器窗口中的DOM顺序是:window->(navigator,

JavaScript基础知识梳理,你能回答几道题?

在学习JavaScript的时候,总是这里学一点,那里学一点,很的很零星,很杂,没有很系统的去学习,感觉好像JavaScript的知识点都了解了,但是真正要说起来,又不知道从何说起! 最深刻的体会就是找工作面试的时候,面试官问你一些JavaScript的基础知识,你貌似知道是怎么回事,但是就是不知道怎么去表达,或者是某个知识点知其然不知其所以然,不知道大家会不会有这样的体会! 所以不管出于什么目的,是去陈旧新也好,是从学JavaScript也好,还是说做备忘也好,我们大家一起来梳理一下JavaS

【JavaScript】javaScript基础知识回顾

我们首先对JavaScript的基础进行回顾. 1.浏览器的对象树 总浏大纲,还是要先看浏览器的对象树: 如1.1浏览器的对象树.png 2.window对象常用方法 alert('信息'):      消息框 prompt('提示信息',默认值): 标准输入框 confirm( ):      确认框 open( ):      打开一个新窗口 close( ):     关闭窗口 3.Form表单对象 访问表单的方式:     *  document.forms[n]     *  docu

Javascript基础知识(一)核心基础语法与事件模型_基础知识

一.Javascript核心基础语法 1.Javascript是一门增加交互效果的编程语言,它最初由网景公司发明,最后提交给ECMA(欧洲计算机制造商协会),ECMA将Javascript标准化,其命名为Javascript. 2.Javascript是一门解释性语言,无需编译就可以直接在浏览器下运行. 3.Javascript的用途?  1.可以控制网页中所有元素,增加.删除.修改元素的属性.  2.可以在html中放入动态文本.  3.响应用户在使用网页时产生的事件.  4.校验用户输入的数