javascript
JavaScript 的历史
javacript的来由
1994时,网景公司研发了livescript语言,领航者浏览器(把livescript语言植入到浏览器)
微软公司的IE浏览器,后来自己花钱20亿美金研发jscript
1995年,Sun公司,推出jdk1.1 .谈合作。livescript-》javascript
1998,美国在线收购网景。
2003,直接关闭网景。网景6-7亿美金。2千万美金,组建谋智基金(火狐)
javascript jscript 语法不同。
JavaScript与java没有关系,JavaScript存在于全世界所有 Web 浏览器中,能够增强用户与 Web 站点和 Web 应用程序之间的交互。
***JavaScript有时候简写为js。***
JavaScript的使用方式
1.内部javacript:
在html页面中使用<script>标签,在<script>标签体中写js内容
缺点:和html代码混杂在一起,不好维护,不好重用
2.外部javascript(推荐使用)
常用的函数:
alert("提示框");
document.write("向浏览器输出内容");
JavaScript基本内容
js的变量和数据类型
js定义变量:
var a = 10;
注意:
1. 使用var关键词定义变量,var可以省略的,但是不建议省略var
2. 在js中可以重复定义变量,后面定义的变量会覆盖前面的变量。
3. js是弱类型语言,使用var来定义任何数据类型 4. js中变量的类型是由变量的值决定的,所以只定义不赋值的变量,就是一个未赋值变量(undefined),未赋值的变量不能使用
可以通过下面查看变量的数据类型:
typeof(变量)
类型转换:
string->number(整数) : parserInt(变量)
string->number(小数): parserFloat(变量)
运算符和流程控制
运算符有算数运算符、比较运算符、逻辑运算符、三目运算符。
流程控制:
if语句:
if(条件表达式){处理语句}
else{处理语句}
条件表达式可以是以下:
布尔值:true:成立 ; false:不成立
number:非0:成立; 0: 不成立
string: 非空字符串: 成立 ; 空字符串: 不成立
object: 非null: 成立; null:不成立
switch语句:
swtich(变量){
case 选项1:
语句;
break; 如果不break,就会继续下面选项的语句
case 选项2::
语句;
break;
default:
默认;
}
注意:
case的条件:
1)可以是常量. string,number
2)可以是变量。(java是不能是变量)
3)可以是表达式 (java不能这样)
for循环语句:
for(初始化语句;条件判断语句;流程控制语句){
循环体语句
}
while语句:
初始化语句
while(条件判断语句){
循环体语句;
条件控制语句;
}
do-while语句:
初始化语句;
do{
循环体语句;
条件控制语句;
}while(判断条件语句)
打印一个5行*:
for(var i =1;i<6;i++){
for(var j = 0;j<i;j++){
document.write("*");
}
document.write("<br/>");
}
js中的函数
函数定义:
function 函数名称(形式参数列表){
语句
}
打印乘法表:
function printMulti(){
for(var i =1;i<=9;i++){
for(var j = 1;j<=i;j++){
document.write(j+"*"+i+"="+(i*j));
document.write(" ")
}
document.write("<br/>");
}
}
对象编程
String对象
有两种定义方式:
第一种:var s1 = new String("hello");
第二种:
var s2 = "hello";
第一种两个比较,直接用 ==,两个不相等;
如果使用valueOf,相等;var str1 = new String("hello"); var str2 = new String("hello"); document.write("结果:"+(str1==str2)+"<br/>"); document.write("结果:"+(str1.valueOf()==str2.valueOf()));
如果是第二种方式定义,则相等,和java中的类似。
var str1 = "hello";
var str2 = "hello";
document.write("结果:"+(str1==str2)+"<br/>");
2. Number对象
也有两种定义方式:
var num1 = new Number(20);
var num1 = 20;
和String类型类似;
3. Boolean对象
和String类似;
4. Math对象
其方法和java中的类似:
常用方法:
1)ceil(): 向上取整。 如果有小数部分的话,直接+1
2)floor(): 向下取整。如果有小数部分的话,直接丢失小数部分,保利整数位
3) round(): 四舍五入取整。满5进一
4)random(): 生成一个随机的0-1的小数 .包含0,不包含1
5)max(): 返回最大值
6)min(): 返回最小值
5. Date对象
创建日期
var date = new Date();
可以获取年、月、日、时、分、秒;
6. Array对象
*数组的长度会随着元素的添加而变化
js中的数组中可以放任意类型的数据;*
创建数组有两种方式:
1.指定数组的长度:
var arr = new Array(3);
2.不需要new,直接指定内容
var arr = [1,”2”,false];