学习主题:JavaScript
学习目标:
1 掌握js引入
2 掌握js变量 数据类型
3 掌握 js运算符
4 掌握js的控制语句
5 掌握js的函数,数组
6 掌握js的event对象
1.JS定义和特点
(1)简述javaScript的特点
答:JavaScript 一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言。内置支持类型
(2)简述javaScript的作用
答:
1、html+css 只是可以实现静态的页面无法实现动态的效果
2、表单的校验
3、背景图片的更换
4、操作节点的信息
(3)请列举javaScript的优点和缺点
答:优点:
1、脚本语言
2、基于对象的语言
3. 事件驱动:
4、简单性
5、安全性
6、跨平台性
缺点
各种浏览器支持JavaScript的程度是不一样的,支
持和不完全支持JavaScript的 浏览器在浏览同一
个带有JavaScript脚本的网页时,效果会有一定的
差距,有时甚至会显示不出来。
2.JS的声明和引入
(1)javascript 的引入方式有几种,分别怎么写?
答:两种。分别如下:
<script type="text/javascript">
alert("js 的学习课程");
</script>
<script type="text/javascript"
src="js/test.js" charset="UTF-8" ></script>
(2)javascript的引入方式可以综合书写吗?请说明原因
答:不可以,这样写容易错乱
(3)javaScript 标签的type="text/javascript"属性和charset="UTF-8"属性的作用
答:分别用于指定引入文件的类型和指定引入的编码。
3.JS中的变量
(1)JS中的变量名区分大小写吗?
答:区分
(2)JS中书写表达式结束可以把分号省去吗?
答:可以省,但是不建议这么书写
(3)JS中变量名的规范
答:与Java中的变量命名规则一致。
4.JS中数据类型
(1)请问在JS中NAN这种数据类型是什么意思,是如何产生的?
答:不是一个数,是在类型转换时转换结果不是number的情况下产生的
(2)请问在JS中undefined这种数据类型是什么意思,是如何产生的?
答:没有定义变量的类型。只声明,没有初始化
(3)var a =null; alert (type a) 请问弹出什么?
答:Object
5.JS中的运算符
(1)请问在JS中的”==和===”
的区别,以及各自的作用。
答:
` 1、(==)等值符
先比较类型 如果类型一致,在比较内容如果类型不一致,这时候会进行强制转换统一转number类型,然后再进行内容的比较
2、(===)等同符
先比较类型 如果类型一致,在比较内容如果类型不一致 直接返回false;
(2)5.2.2 请分别打印下面的结果
var f1=false;
var f2="false";
var f3=0;
var f4="0";
alert(f1==f2);//false
alert(f1==f3);//true
alert(f1==f4);//true
alert(f2==f3);//false
alert(f2==f4);//false
alert(f3==f4);//true
alert(f1===f2);// false
alert(f1===f3);// false
alert(f1===f4);// false
alert(f2===f3);// false
alert(f2===f4);// false
alert(f3===f4);// false
6.JS中的控制语句
(1)请问 if (){} 和if(){} else if(){}…else{}的区别
答:第一个是单选泽语句,第二个是多选择语句,只执行选择语句中的某一条。
(2)for循环中的变量是局部变量吗?
答:不是
7.JS中函数的学习
(1)函数的声明方式有几种?请说明具体的作用
答:
有三种
(1) function 函数名(){
函数体
}
(2) var 函数名=function(){
函数体
}
(3) var 函数名=new Function(“函数体”);
(2)请说出函数执行符的作用
答:用于调用某个函数
8.JS中Date和Math对象
(1)请说出 Date对象常用的方法
答:
//本月中的第几天
document.write(date.getDate()+"<br />");
//本星期的第几天
document.write(date.getDay()+"<br />");
//返回的月份 0-11
document.write(date.getMonth()+"<br />");
//返回的是1900年到现在年份的差值2018-1900
document.write(date.getYear()+"<br />");
//返回全年2018
document.write(date.getFullYear()+"<br />");
//2018/6/22 下午12:17:14:返回本地的时间
document.write(date.toLocaleString()+"<br />");
(2)请说出Math对象常用的方法
答:
//获得随机数
//随机数范围是0-1
var ran=Math.random()*1000;
console.log(ran);
//向下取整 756.9714434215177 ==756
console.log(Math.floor(ran));
//向上取整 398.06376470341377==398
console.log(Math.ceil(ran));
//获得4位随机数--验证码
console.log(Math.floor(Math.random()*9000+1000) );
9.JS中String和Global
(1)请说出String对象的常用方法
答:
var a="b-j-s-x-t";
var b=new String("bjsxt");
//获得下标为2的内容
document.write(b.charAt(2)+"<br />");
//2 :获得下标
document.write(b.indexOf("sxt")+"<br />");
//字符串截取 开始下标 截取长度
document.write(b.substr(2,3)+"<br />");
// 截取开始的长度
document.write(b.substr(1)+"<br />");
//字符串截取 开始下标 结束的下标
document.write(b.substring(2,3)+"<br />");
//开始下标
document.write(b.substr(2)+"<br />");
//字符串截取的方法
document.write(a.split("-"));
(2)请说出Global对象的常用方法
答:
var a=1;
var b="var c=1+1";
document.write(a+"<br />");
document.write(b+"<br />");
//把字符串转成可以执行的js的代码
eval(b);
document.write(c+"<br />");
var d="123a";
Number(d);//NAN
// 检查某个值是否是数字。
document.write(isNaN(d));
10.JS中Array对象学习A
(1)在JS中的数组下标是否可以不连续?
答:可以不连续,没有赋值的元素用empty代替
(2)var arr2=new Array(参数); 数组的声明中这个参数的个数不同代表的含义是什么?
答:如果是一个参数,且参数为数字,则参数代表数组的长度
如果是两个以上的参数,则参数代表数组中的元素。
11.JS中Array对象学习B
(1)请问JS中数组的长度是不是可变的.
答:是的
(2)JS中数组的遍历方式有几种,请列举.
答:
有两种
var arr=["bjsxt",123,new Date(),false];
for(var i=0;i<arr.length;i++){
console.log(arr[i]);
}
//方式二 i:是数组的下标
for(var i in arr){
console.log(arr[i]);
}
(3)请列举JS中数组的常用方法.
答:
//向数组的末尾添加一个或更多元素,并返回新的长度。
arr.push("我们");
// 删除并返回数组的最后一个元素
arr.pop();
//向数组的开头添加一个或更多元素,并返回新的长度。
arr.unshift("你好");
//移除并返回数组的第一个元素
arr.shift();
12.JS中的事件学习Event
(1)请列举出常用的事件
答:
onchange HTML 元素已被改变
onclick 用户点击了 HTML 元素
onmouseover 用户把鼠标移动到 HTML 元素上
onmouseout 用户把鼠标移开 HTML 元素
onkeydown 用户按下键盘按键
onload 浏览器已经完成页面加载
(2)请问onclick事件和onchange事件的使用的场景是什么
答:OnChange经常用于select下拉列表选中后的内容发生改变时候触发
OnClick表示的是点击该控件时触发