JavaScript也是一种编程语言。并不是Java的分支哦。
可以直接在浏览器中运行的编程语言。
JavaScript 的历史故事:
1、JavaScript语言与名称的由来(Netscape,Sun Java)
最开始是叫LiveScript的~有一个小故事,有兴趣的朋友可以去百度一下。
2、微软的Explorer和JScript
JavaScript 概述
JavaScript是基于对象和事件驱动的脚本语言,主要应用在客户端。
特点:
1.交互性(它可以做的就是信息的动态交互)
2.安全性(不允许直接访问本地硬盘)
3.跨平台性(只要是可以解释Js的浏览器都可以执行,和平台无关)
JavaScript与Java不同
1.JS是Netscape公司的产品,前身是LiveScript;Java是Sun公司的产品,现在是Oracle公司的产品。
2.JS是基于对象的(对象都做好了的),Java是面向对象的(自己写对象的)。
3.JS只需解释就可以执行,Java需要先编译成字节码文件,再执行。
4.JS是弱类型,Java是强类型。
JavaScript与Html的结合方式:
想要将其他代码融入到Html中,都是以标签的形式。
1.JS代码存放在标签对<script> js code...</script>中。
2.当有多个html页面使用到相同的JS脚本时,可以将js代码封装到一个文件中,只要在script标签的src属性引入一个js文件。
(方便后期维护,扩展)
注意:如果在script标签中定义了src属性,那么标签中的内容不会被执行。
例:<script src=”test.js” type=”text/javascript”></script>
注:规范中script标签早期有一个属性language
(因为早期认为可能有多种脚本语言,然而到现在,还是JS一家独大~所以。),而现在使用type属性。
演示:
<html>
<head>
<title>javascript语言演示</title>
</head>
<body>
<script type="text/javascript">
alert("hello world!")
</script>
</body>
</html>
写法一:
<script type="text/javascript">
alert("hello world!")
</script>
这一句放哪里都可以的。别放html标签外就可以了。

写法二:
<script type="text/javascript" src="a.js">
</script>


不可以嵌套用!但是可以有很多个script 标签(但是注意顺序啊)
<script type="text/javascript" src="a.js">
alert("hello world!222");
</script>
JavaScript语法
每一种语言都有自己的语法规则,JS语法与Java很像,所以学习起来比较容易。JS中也一样有变量,语句,函数,数组等常见语言组成元素。
1.变量
通过关键字var来定义,弱类型既是不用指定具体的数据类型。
例:var x = 3; x = “hello”;
注:JS中特殊的常量值:undefined,当变量没有初始化就被使用,该变量的值就是undefined(未定义)。
注意:Javascript的语句在结尾处是可以不用分号结束的,非严谨语言的特点。
但为了符合编程规范,需要象java一样定义结束符。
而且有些情况是必须写分号的,如:var x = 3 ; var y =5 如果两条语句写在同一行,就需要分号隔开。
代码演示:
<html>
<head>
<title>javascript语法 演示</title>
</head>
<script type="text/javascript">
var x = 3;
var y = "abc";
alert(x+","+y);
x="xyz";
alert(x);
x=true;
alert(x);
x=true+1;
alert(x);
a=3.14;
alert(a);
alert( typeof(a) );
a=3;
alert( typeof(a) );
a=3.156441564165564616541564156;
alert(a);
alert( typeof(a) );
a=3156441564165564616541564156;
alert(a);
alert( typeof(a) );
a='a';
var m=1
var n=2
alert(m+n);
</script>
<script type="text/javascript">
alert( typeof("aaaa") );
alert(typeof('0') );
alert( typeof(false) );
alert( typeof(100) );
alert( typeof(1.23) );
alert( typeof('0')=="string" );
alert( typeof('0')=="String" );
alert( typeof(x) );
alert( typeof(X) );
alert( typeof(x)=='number');
</script>
<body>
</body>
</html>
2.运算符
Javascript中的运算符和Java大致相同。
只是运算过程中需要注意几点:
1,var x = 3120/1000*1000; x = 3120;而不是3000。
2,var x = 2.4+3.6 ; x = 6;而不是6.0
3,var x = “12” + 1; x = “121”; x = “12” – 1 ; x = 11;
加号对于字符串是连接符
4,&& || 是逻辑运算符 & | 是位运算符。
5,也支持三元运算符
6,特殊运算符 typeof : 返回一个操作表达式的数据类型的字符串。
var x = 3;
var y = “123”;
var z = false;
typeof(x); //number
typeof(y); //string
typeof(z); //boolean
代码演示:
<script type="text/javascript">
var a = 3710;
alert("a="+a/1000);
alert("a="+a/1000*1000);
var b = 2.3;
var c = 5.7;
alert( b+c );
alert( 23+11 );
alert("23"+11);
alert("23"-11);
alert(false+1);
alert(100%3);
alert(100%-3);
alert(-100%3);
var n=3,m;
m=n++;
alert("n="+n+",m="+m);
var n=3,m;
m=++n;
alert("n="+n+",m="+m);
var n;
alert(n);
var i=3;
i+=3;
alert("i="+i);
var j=10;
alert(j>5);
var k=4;
alert(k>3 && k<10);
alert( !(k>3) );
alert( !k );
var c = 6;
alert( c&3 );
alert( c^100^100 );
alert(c>>>1);
alert( 3>0?100:300 );
var xxyy;
alert(xxyy);
alert(xxyy==undefined);
alert(xxyy=="undefined");
</script>
3.语句(与Java语句格式相同)
1.判断结构(if语句)
注:var x = 3;
if(x==4)//可以进行比较运算。
if(x=4)//可以进行赋值运算,而且可以同样进行判断。不报错。
因为在Js中0或者null就是false,
非0或者非null就是true(通常用1表示)。
所以if(x=4)结果是true;
可以通过if(4==y)来解决该问题。因为4=y不会进行判断,而是会报错。
2.选择结构(switch语句)
与java不同的是:因为弱类型,也可以对字符串进行选择。
代码演示:
<html>
<head>
<title>javascript语法演示</title>
</head>
<script type="text/javascript">
var x=3;
if(x>0){
alert("yes");
}else{
alert("no");
}
if(x-4){
alert("yes2");
}else{
alert("no2");
}
if(x=4){
alert("yes3");
}else{
alert("no3");
}
if(x=0){
alert("yes3");
}else{
alert("no3");
}
if(4==x){
}
var b =(3,4+5);
alert(b);
var c = 5;
if(c>1){
alert("a");
}else if(c>2){
alert("b");
}else if(c>3){
alert("c");
}else{
alert("d");
}
</script>
<script type="text/javascript">
var x = "abc";
switch(x){
case "aa":
alert("a");break;
case "abc":
alert("b");
default:
alert("c");
}
switch(x){
default:
alert("c");
case "aa":
alert("a");break;
case "abc":
alert("b");
}
x="x";
switch(x){
default:
alert("c");
case "aa":
alert("a");break;
case "abc":
alert("b");
}
</script>
<body>
</body>
</html>
3.循环结构(while语句,do…while语句,for语句)。
注:不同的是,没有了具体数据类型的限制,使用时要注意。
代码演示:
<html>
<head>
<title>javascript语法演示</title>
<link rel="stylesheet" href="table.css"/>
</head>
<body>
<h3>
湖南城市学院
</h3>
<script type="text/javascript">
var sum=0;
for(var i=1;i<=100;i++){
sum+=i;
}
document.write("sum="+sum);
var x=1;
sum=0;
while(x<=100){
sum+=x;
x++;
}
document.write("<br/><font color=\"#ff0000\" > sum2="+sum+"</font><br/>");
</script>
<br/>
<a href="http://baidu.com"> 百度一下 </a>
<br/>
<hr>
<script type="text/javascript">
for(var x=0;x<3;x++){
for(var y=0;y<4;y++){
document.write("x="+x+" ");
break;
}
document.write("<br/>");
}
document.write("<hr/>");
a:for(var x=0;x<3;x++){
for(var y=0;y<4;y++){
document.write("x="+x+" ");
break a;
}
document.write("<br/>");
}
</script>
<hr/>
<h2>九九乘法表</h2>
<script type="text/javascript">
for(var x=1;x<10;x++){
for(var y=1;y<=x;y++){
document.write(x+"*"+y+"="+x*y+" ");
}
document.write("<br/>");
}
</script>
<h2>九九乘法表2</h2>
<script type="text/javascript">
document.write("<table>");
for(var x=1;x<10;x++){
document.write("<tr>");
for(var y=1;y<=x;y++){
document.write("<td>"+x+"*"+y+"="+x*y+"</td>");
}
document.write("</tr>");
}
document.write("</table>");
</script>
</body>
</html>
table.css
table{
width: 600px;
}
table td{
border: #f00 solid 1px;
}
