JavaScript是一种描述语言,基于对象和事件驱
动的脚本语言。
1. JavaScript的特点
2. ECMAScript是JavaScript的标准和基础
3. JavaScript与JAVA的关系
javaScript与java名字虽然相像,但是它们没有关系。JavaScript和Java都与sun公司有合作,是借势Java
DOM(Document Object Model文档对象模型)
BOM(Browser Object Model浏览器对象模型)
注意
(1)” ”部分是非必须的,为了规避老版本浏览器不识别
(2)“//”是 JavaScript 的注释符号(/**/也是注释符号),它会阻止
JavaScript 编译器对这一行的编译
(3)type属性不推荐写成 language= " javascript " ,不符合XHMLT1.0
示例:
<html>
<head>
<script type="text/javascript">
document.write("你好,JavaScript");
script>
head>
<body>body>
html>
◆alert()
alert(“提示信息”); //提示信息框
示例:
<html>
<head>
<title>js支持的三种弹框,实现和用户交互title>
<script type="text/javascript">
<!-- 这是html注释-->
//这是js注释
alert("你好,alert")
//浏览器处于阻塞状态 代码在alert这个位置停止并等待
script>
head>
<body>
body>
<h1>你好 htmlh1>
body>
html>
◆prompt()
prompt(“提示信息”, “输入框的默认信息”);
prompt(“请输入姓名”, “张三”);
prompt(“请输入姓名”);
示例:
<html>
<head>
<title>js支持的三种弹框,实现和用户交互title>
<script type="text/javascript">
// 第二个弹框叫做prompt框具有返回值,返回的是string数据类型
var userName = prompt("请输入用户名称:",666); //接受2个参数,第一个是提示字符,第二个是输入框默认的值
alert(typeof userName);
script>
head>
<body>
<h1>你好 htmlh1>
body>
html>
◆confirm(
confirm(“确认信息?”); //确定则返回true,取消则返回false
示例:
<html>
<head>
<title>js支持的三种弹框,实现和用户交互title>
<script type="text/javascript">
//confirm 确认框 返回的是布尔值的true或者false
var flag=confirm("确定提交吗?");
alert(flag);
script>
head>
<body>
<h1>你好 htmlh1>
body>
html>
JavaScript的注释方法,与Java一致
//或者/* */
1、由于 JavaScript 对大小写敏感,变量名也对大小写敏感 (y 和 Y 是两个不同的变量)
2、变量必须以字母或下划线或美元符$开始 ,不能使用关键字作为变量名
◆JavaScript的变量声明
//JS的变量声明 ,是通过 var 语句来声明的,无需指定数据类型
var num = 10 ;
var str = "JavaScript" ;
//当然也可声明多个,之间用逗号隔开
var num =10 ,
str = "JavaScript";
//省略 var 语句,直接变量声明
num = 100; //相当于window.num= 100;即全局变量 (不推荐)
typeof运算符
undefined:变量被声明后,但未被赋值
string:用单引号或双引号来声明的字符串
boolean:true或false
number:整数或浮点数
function:函数方法
object:对象 或 数组 或 Null 类型
转换函数
parseInt():字符串转换为整数
parseFloat():字符串转换为浮点数
toString():返回字符串
强制类型转换
Boolean():转化为逻辑值
Number():对象转化为数字
String():对象转化为字符串
1.if条件语句
variablename = ( condition ) ? value1 : value2 ;
2.switch多分支语句
◆流程控制语句
1.while和do while循环语句
2.for循环语句
for ( 变量=开始值; 变量<=结束值; 变量=变量+步进值 )
{
//需执行的代码
}
for ( 变量a in 对象obj )
{
// 获得 obj[a];
}
3.循环中断
break
使用 break 语句来终止循环
continue
使用 continue 语句来终止当前的循环,然后从下一个值继续执行
◆语法规则
JavaScript中的函数
一组可以随时随地运行的语句
将脚本编写为函数以避免页面载入时执行该脚本
/*系统函数举例*/
parseInt("143dd") //将字符串转化为整数,结果为143
parseFloat("143.33dd") //解析一个字符串,并返回一个浮点数,结
果为143.33
/*自定义函数*/
//根据函数的语法自定义的函数
myfun(123);
<html>
<head>
<title>函数的介绍title>
<script type="text/javascript">
//函数的使用
// 当某些代码 需要被重复利用的时候就可以使用函数了
console.log(isNaN("jack")); //判断的不是数据类型 是值 "12",12 false 会自动尝试将值转换为数值
// 写一个最简单的函数并调用
// 函数的调用
//alertName("jack"); //声明在调用之后就无法被调用了
// 函数的声明方式1 js函数提升器 js会先声明这种方式声明的函数 再依次执行代码
function alertName(userName){
alert(userName);
}
// 函数的声明方式2 声明一个匿名函数将地址传递给变量
//var alertName = function(userName){
// alert(userName);
//}
/*
如果我函数的声明中参数和传入参数数量不一致会有什么结果
functuon fn1() {}
fn1("jack");
functuon fn2(userName) {}
fn2();
?形参和实参有关系吗?
没有
*/
//实现练习 eval 和 isNaN 两个系统函数
script>
head>
<body>
<h1>你好h1>
body>
html>
JavaScript侦测到的行为
<html>
<head>
<title>随堂练习2 从页面上获取元素和元素的值title>
head>
<body>
标题:<input type="text" id="tt" /><br />
内容:<textarea id="ttt">textarea><br />
<input type="button" value="提交" id="btn" />
<script type="text/javascript">
//1 获取元素
var title1=document.getElementById("tt");
var value1=document.getElementById("ttt");
var btn1=document.getElementById("btn");
//2 操作元素
// 绑定事件
btn1.onclick=function(){
if(confirm("确定提交吗?")){
console.log(title1.value);
console.log(value1.value); //innerHTML和value的区别
}
}
script>
body>
html>
BOM概述
BOM使得JavaScript能与浏览器进行“对话”
<html>
<head>
<title>随堂练习3title>
head>
<body>
<h1>新浪h1> <input type="button" value="改变层内容" id="btn1" />
<br />
<input type="text" name="session" />
<input type="text" name="session" />
<input type="text" name="session" />
<input type="text" name="session" />
<br />
<input type="button" value="显示所有input元素的内容" id="btn2" />
<input type="button" value="显示所有session内容" id="btn3" />
<hr />
<p id="pshow">p>
<script text="text/javascript">
//1 获取元素
// 如果元素具有id 浏览器会自动在加载完成之后 自动创建为一个对象模型 名字就是这个id 前提是你必须保证 这个id在html中是唯一的
var inputs = document.getElementsByTagName("input");
var sessions = document.getElementsByName("session");
var hs = document.getElementsByTagName("h1");
//2 操作元素
// 2.1 改变元素内容
btn1.onclick=function(){
hs[0].innerHTML="搜狐";
}
// 2.2 显示所有input中的内容
btn2.onclick=function(){
pshow.innerHTML="";
for(var i=0;i<inputs.length;i++){
pshow.innerHTML=pshow.innerHTML+" "+inputs[i].value;
}
}
// 2.3 显示所有session的内容
btn3.onclick=function(){
pshow.innerHTML="";
for(var i=0;i<sessions.length;i++){
pshow.innerHTML=pshow.innerHTML+" "+sessions[i].value;
}
}
script>
body>
html>
HTML DOM innerHTML 属性
定义和用法
innerHTML 属性设置或返回表格行的开始和结束标签之间的 HTML。
语法
Object.innerHTML = "HTML";// 设置
var html = Object.innerHTML;// 获取