1.1简介
是javascript语言:是脚本语言,是基于对象的语言,是弱数据类型的语言,是基于事件驱动的语言,可以写业务逻辑
基于对象:就是说对象已经被定义好了,只需要用对象即可
弱数据类型:对数据类型不敏感,(java是强数据类型的语言)
基于事件驱动:即点击,键盘等各种事件驱动
运行在浏览器:有浏览器即可
无需编译:由浏览器直接解释
1.2特点:
交互性:信息的动态交互
安全:不允许直接访问本地硬盘
跨平台:只要有解释js的浏览器即可,和平台(操作系统)无关
1.3js核心语法
1.3.1事件名=”js代码”
onClik=”alert(‘www.blog.csdn.net/364567628’)”或者href=”javascript:vara = 1 ; alert();”
例:
<ahref="javascript:alert('http://blog.csdn.net/chen364567628')">落花丶知秋</a>
<inputtype="button" value="落花丶知秋" οnclick="alert('http://blog.csdn.net/chen364567628')">
1.3.2通过<script></script>标签
在标签中直接写
Document.write();//在网页上输出数据
<script type="text/javascript">
alert('http://blog.csdn.net/chen364567628');
document.write('你好');//直接在网页上输出,可以嵌套html的标签输出+“<br/>”
</script>
1.3.3外部js代码
优点:相当于把公共的抽取出来,灵活,带出都可以用
<script type = “text/javascript” src=”one.js”></script>//直接引用
注意:type也可以写成language,也可以不写
1.3.4js中的注释
//单行注释和/**/多行注释
1.3.5js中变量var
Js中变量类型:number(所有数值),string(字符串),Boolean(逻辑),object(new对象),undefined(没定义,及声明没赋值),null(对象不存在)
变量声明:var a=1;
判断类型:typeof()
判断所属对象:instanceof
1、注意:弱类型会自动转成对象,基本类型可以调方法
2、注意:Js中的对象必须是new出来的,否则会被认为是基本类型,java和js是两个不同的东西不能对比。
3、注意:结尾;可有可无,建议编写。输出语句中不区分单引号和双引号
运算符:
+,-,*,/,++,--,%
==是等于,只检查值
===是即检查值也检查类型
注意:var a=”5”;
Var b=5;
a+b=55是字符串,a-b=0是number
null,false,0,‘’,undefined,NaN都是假,除此之外都是真
isNaN函数:是否不是数字,非数字就是true,
注意:用双引号的纯数字也是数字,直接纯数字也是数字。
1.3.6数组
<scripttype="text/javascript">
var arr = new Array();//数组长度为0
var a = new Array(5);//代表数组长度为5
var b = new Array(5,6);
var c=[5,6];//代表有元素5和6
//添加数组元素,但不受限于数组长度
arr.length;//获得数组长度
//定义一个数组后,放什么和什么位置放随便,不受限制
a[10]='ac';
a[100]=new Date();//类型不限,但是没有放值得下标是undefined
//注意:数组的sort方法是按第一个字符的的先后排序的
</script>
具体方法:查文档
1.3.7string的方法
Substr(开始,结束):截取字符串
Substring(开始,结束):不包含结束位置
注意:下标从0开始
1.3.8产生1-10随机整数
1、Math.round(Math.random()*10+0.5);
2、parseInt(Math.random()*10+1);取整和小数点无关
3、Math.FLOOR(Math.random()*10+1);//向下取整
1.3.9常用对象
String:字符串对象
Date:日期对象
Number:数字基本对象
Boolean:逻辑对象
Array:数组操作对象
Math:执行数学任务
RegExp:正则表达式对象
注意:对象必须是new出来的。包括String。
Html帮助文档
1.3.10定义函数
Function 函数里面的参数不能定义类型,无需返回值类型,直接传参数即可,否则会报错。
三种函数定义方式
1、function add(x,y){}
2、var add = function(x,y){}
3、var add = newFunction(“x”,”y”,””);//后面“”中是函数表达式(最后一个参数)。不常使用
动态时钟:
<scripttype="text/javascript">
//定义函数
functionshowTime() {
vardate = new Date();
varhour = date.getHours();
varminute = date.getMinutes();
varsecond = date.getSeconds();
//获取标签
varinput = document.getElementById("showT");//通过id获得标签
input.value= hour + ":" + minute + ":" + second;
}
setInterval("showTime()",1000);//计时器
</script>
1.3.11正则表达式
例子:自动检查文本框内容
<scripttype="text/javascript">
function validateUsername(obj) {//带参数函数
//获得标签的内容
//varname = document.getElementById("username").value;
varname = obj.value;
//创建正则表达式
varreg = new RegExp("[a-zA-Z]{6,10}");
//匹配
varbvalue = reg.test(name);
//判断是否正确
if(bvalue) {
alert("用户名格式正常");
}else{
alert("用户名必须是6到10为的字母字母");
}
}
</script>