JavaScript是基于对象和事件驱动的脚本语言,主要应用于客户端
JavaScript特点:
1.交互性(信息动态交互)
2.安全性(不允许直接访问本地硬盘)
3.跨平台性(只要是可以解释JavaScript的浏览器都可以用,与平台无关)
JavaScript与Java的区别:
要明确的是,和Java一点关系没有
1.JS是基于对象(里面的内容都是对象),Java是面向对象(以面向对象的思想考虑解决问题)
2.JS只需解释就可以执行,Java需要先编译成字节码文件,再执行
3.JS是弱类型(搞一个空间想放什么放什么),Java是强类型(指每一种数据都定义好一种类型,并对定义好的类型,进行空间的划分,即指定的空间只能放相应的对象)
以标签的方式融入Html中
1.JS代码存放在标签<script>中,js code...</script>
<strong><script type="text/javascript">//封装js代码 alert("Hello Javascript");
</script></strong>
2.当有多个Html页面使用到相同的JS脚本时,可以将JS代码封装到一个文件中,只要在script标签的src属性引入一个js文件(为了方便日后维护,扩展)
需要注意的是:如果在script标签中定义了src属性,那么标签中的内容就不会被执行,
<script src = "xxx.js" type="text/javascript"> </javascript>
ps:script标签早期属性是language,现在是type属性。
<strong><script type="text/javascript" src="js.js">//导入js文件 /*alert("Hello Javascript"); 不会显示,因为已经导入了js.js的JavaScript文件*/
</script></strong>
所以,通常在导入js文件都是单独<script>来完成。<script>可以写在html任意位置,但是要注意规范
通常高级程序设计语言所包含的语法内容:
1.关键字 2.标识符 3.注释 4.变量 5.运算法 6.语句 7.函数 8.数组 9.对象
js的关键字很多和java重复
js的变量:
需要使用到关键字var
<strong><script type="text/javascript"> var x = 1;//js是弱类型,且非严谨,有时候分号和var写与不写都行,但是要严谨规范
x = "abcd";//赋值字符串
x = 3.5123;//赋值小数,数字类型
x = true;//布尔型
x = 'a';//赋值字符串,js中不论单引和双引,都是字符串,单引可以套双引,双引可以套单引
alert("x = "+x);//函数,将具体的参数通过对话框进行显示
</script></strong>
运算符:
1.算数运算符 2.赋值运算符 3.比较 4.逻辑 5.位运算 6.三元
/*算数运算符*/
<strong> var x = 315;
alert(x/100);
var a = 1.8,b = 2.2;
alert(a+"+"+b+"="+(a+b));
alert("10"+1);//显示 101
alert("10"-1);//显示9,字符串10先变成整数后,再减1:一定注意+-
alert(true);//显示true,如果alert(true+1),显示2
//在JS中,true默认为1,非0,非null;false默认0,或null
alert(2%5==0);//false</strong>
++,--等自增,自减运算,和Java的运算规则一样
/*赋值运算符*/
<strong> var a = 3;
a += 1;//a = a+1;JS不区分提升问题
a *= 2;
a /=3;
alert("a = "+a);</strong>
/*3.比较运算符*/
<strong>var a = 3;
alert(a == 3);//要么是true,要么是false
alert(a>=1);</strong>
/*4.逻辑运算符*/
var a = 3;
alert(a>3 && a<10);//建议使用双与。双或
alert(a>3 & a<10);//单&在JS中,是位云算符,1,0
alert(!a);//,false,a是3,是真,!真就是假
a = 0;
alert(!!a);
/*5.位运算符 & | ^ << >> >>> */
var a = 6;
alert(a&3);//2
alert(a^3^3);//6
alert(a>>2);
alert(a<<2);
alert(~a);
/*6.三元运算符 ?: */
var a = 3,b = 4;
a==b?alert(a):alert(b);//alert(a==b?a:b);
关于undefined
undefined可以确定一个具体值的类型
/*undefined:未定义,其实就是一个常量值*/
var x;
//alert(x);//undefined
//alert(x==undefined);//true
//要想获取其具体值的类型,通过typeof来完成
alert(typeof("abc"));// string类型
alert(typeof('x'));// string类型
alert(typeof(78));//number类型
alert(typeof(1.235));//number
alert(typeof(true)=="boolean");//boolean类型