版权声明:@ly https://blog.csdn.net/lytwy123/article/details/83541678
1.Javascript简介
-
Javascript是基于对象和事件驱动的语言,应用于客户端。
-基于对象: **提供了很多对象,可以直接拿过来使用 -事件驱动(比如鼠标滑动): **html做网站是静态的效果,js做的网站是动态的效果 -客户端:专门指的是浏览器
-
js的特点
(1)交互性 -信息的动态交互。 (2)安全性 -js不能访问本地磁盘的文件 (3)跨平台性 -java里面跨平台性虚拟机 -只有能够支持js的浏览器可以运行。 * js与java的区别(两者没有任何关系) (1)java是sun公司,现在oracle。js是网景公司 (2)js是基于对象的,java是面向对象的。 (3)java是强类型的语言,js是弱类型语言。 -比如java里面int i = "10";(不允许) -js:var i = 10;var m = "10"; (4)js只需解析就可以执行,而java需要先编译成字节码才能执行。 *javascript的组成 三部分组成 (1)ECMScript -ECMA:欧洲计算机协会 -有ECMA组织指定的js的语法,语句... (2)BOM -broswer object model:浏览器对象模型。 (3)DOM -doucument object model:文档对象模型。
2.js和html的结合方式(两种)
第一种:
-使用一个标签<script type="text/javascript"> js代码;</script>
第二种:
-使用script标签,引入一个外面的js文件
***创建一个js文件
注释方法与java相同。
<script type="text/javascript" sec="js文件路径"></script>
注意:使用第二种方法的时候,就不要在<script>标签里写js代码了。
3.js的原始类型和声明变量
**java的基本数据类型:byte,short,int,long,float,double,char,boolean。
**js的原始类型(五个)
定义变量var
-string(字符串)
//定义一个字符串
var str = "avb";
-number(数字类型)
//定义一个数字类型
var num = 123;
-boolean(ture、false)
//定义一个布尔类型
var flag = true;
-null
***var date = new Date()当前时间
获取对象的引用,null表示对象引用为空,所有对象的引用是Object
-undefined
***定义一个变量,没有赋值。
***var aa;
typeof()运算符:查看当前对象的类型
4.js的语句
**java里面的语句:
**if语句
=表示赋值
==表示判断
**switch语句
*循环语句
**js里面的语句
if语句:与java用法相同。
switch语句
-java里面支持的的数据类型,string
-js里面都支持
-语法与java相同
循环语句 for while do-while
//while循环
var i = 5;
while(i>1){
alert(i);
i--;
}
//for循环
for(var i=0;i<=5;i++)
{
alert(i);
}
**++i与i++
用法与java相同
5.js的运算符
与Java不同的:
**js里面不区分整数和小数
var j = 123;
j/1000*1000;
java中为0
js里面不区分整数和小数,0.123*1000=123
字符串的相加和相减问题的操作
var str= "123";
alert(str+1);在js中还是1231
alert(str-1);在相减时是真正的进行相减。
注意:如果不是一个数字会提示NaN
boolean类型也可以进行相加相减的效果:
var flag=true;
flag+1; //flag=2
var flag=false;
flag+1; //flag=1
== 与 ===区别:
**做判断
var aa=5;
if(aa == 5){
alert("5")
}else{
alert("other");
}
//
if(aa === 5){
alert("5")
}else{
alert("other");
}
区别:==比较的是值 === 比较的是值和类型。
引入知识
直接向页面输出的语句(可以把内容显示在页面上)
*document.write(可以写html代码、变量)
6.案例9*9乘法表
源代码:
<!DOCTYPE html>
<html>
<head>
<title>9*9乘法表练习</title>
</head>
<body>
<script type="text/javascript">
//循环行
document.write("<table border='1' bodercolor='blue'>");
for (var i = 1; i <= 9; i++) {
document.write("<tr>")
//循环列
for(var j = 1;j<=i;j++){
document.write("<td>");
document.write(j+"*"+i+"="+j*i);
document.write("</td>");
}
//document.write("<br/>");
document.write("/<tr>");
}
document.write("</table>");
</script>
</body>
</html>
7.js的数组
*什么是数组?
-使用变量 :var m = 10;
js数组定义方式(三种)
(1):var arr = {1,"256",true};
(2)使用内置的对象Array对象:
var arr1 = new Array(5)//定义一个数组,数组的长度为5 arr1[0]="1";
(3):使用内置对象Array
var arr2 = new Array(3,4,5)//定义一个数组,数组里面的元素是3、4、5
数组里面的一个属性:length:数组的长度。
数组的长度是可变的
数组可以存放不同的额元素
8.js的函数
**在java里面定义方法
public 返回类型void/int 方法名(参数列表){
}
**在js里面定义函数/方法(三种)
(1):
*使用一个关键字function
*function 方法名(参数列表){
}
//调用function();
(2)匿名函数:
var add= function(参数列表)
{
}
比如var add = function(a,b){alert(m+n);}
add(5,6);
(3)动态函数:用的较少
***使用到js里面的内置对象Function
var add = new Function("x,y","var sum=x+y;return sum;");
//调用
add(2,5);
9.js的全局变量和局部变量
**全局变量:在script标签里面定义一个变量,这个变量在页面中js部分都可以使用。
-在方法外部使用,在另一个script标签使用。
**局部变量:在方法内部定义一个变量,只能在方法内部使用。
*IE浏览器自带了一个调试工具,IE8及其以上的版本中,键盘上F12,就会出现调试工具页面。
10.script标签放置位置
*建议把script标签放在</body>后面。
*如果有这么一个需求:
在js里面如果需要获得input里面的值,如果把script标签放在head里面,直接在里面取input里面的值,因为页面还没有解析到input那一行,肯定取不到。