javascript是一种小型的、轻量级的、面向对象的、跨平台的客户端脚本语言
javascript 是嵌入到浏览器软件当中的取得,只要你的电脑有浏览器就可以执行js程序了
javascript是一种面向对象的程序语言
在程序中,对象是由属性和方法构成
“对象”有各种各样的特征,很多的方法
注意:JS中的对象只要会用就可以了,不需要我们自己去开发对象
跨平台:js程序可以在多种平台下运行
客户端脚本程序:js只能在客户端的浏览器来运行, 不能在服务器来运行。
-
javascript能干什么
- 表单验证:是js最基本的功能
- 动态html:可以实现一些动态的、重复的效果
- 交互式 人机交互、通过键盘和鼠标,进行元素的额交换
<script></script>
document.write(str)
在网页body标记输入str的内容
<script type="text/javascript">
docyment.write("在body中打入此话")
</ script>
document是一个文档对象,代表整个网页
write() 是document对象的一个输出方法
window.alert(str)
在当前窗口弹出一个警告对话框,str为对话框显示的内容
window代表当前浏览器窗口,window是一个窗口对象。
alert()方法,弹出一个对话框。
html的注释 <---->
css的注释/**/
js的注释// 或多行注释/* */
变量的声明
语法格式: var 变量名 = 变量值
- 变量名可以包含字母、数字或下划线开头
- 变量名不能以数字开头,可以以字母或下划线开头
- 变量名不能是系统关键字。
- js中的变量名是区分大小写的
- js中变量的名称一定要有意义 比如 getUserName
var b + 10 = a + 20; 语法错误 左边不能是运算表达式
变量的数据类型
数值型、字符型、布尔型、undefined、null、array、object、function
- 数值型可以进行算数运算
- 数值型包括整型、浮点型
- 字符型: 用单引号或双引号引起来的一个字符串
只能进行连接运算
js中的运算符
- 算数运算符 + _ * /
- 赋值运算符 = +=
//赋值运算符+=
var a ="10 ";
a = a + 10;
document.write(a)
结果字符串1010
- 布尔型
布尔型又称逻辑型 true和flase
var a = true;
var b = false;
常用if条件判断语句 - if条件判断
语法结构:
if(条件判断:结果只有两个真假)
{
条件为true,将执行该代码
}else
{
条件为假,将执行该代码
}
说明if必须全小写 小括号是条件判断语句
-
未定义型
没有没赋值的变量 undefined
当一个对象的属性不存在,也返回未定义型 -
空型
var a =“”;
当一个对象不存在时,将返回空型,空型的值只有一个null。
var a = null;
- 其他类型转换布尔型
Boolean() - 其他类型转换字符型
- 其他类型转换数值型
使用一元运算符typeof()可以测试一个变量的类型
结果: string number boolean undefined object function
另外 null 、对象、数组会显示object类型
函数和方法的区别
Boolean(str) 函数可以独立使用
document.write(str) 方法不能独立使用
parseInt() 在一个字符串中,从左网友提取整型,如果遇到费整形的内容,停止提取,并返回结果。若果第一个字符就是非整型,则立即停止,并返回NaN
parseInt(“150sj”)=150;
parseInt(“a150s”)=NaN;
parseFloat() 系统函数、全局函数
功能:在一个字符串中,从左往右提取浮点型,遇到非浮点型内容,则停止提取,并返回结果。如果第一个字符是非浮点型,则立即停止,并返回NaN
parseFloat(“120px”)= 120;
parseFloat(“120.3365sss”)=120.3365;
parseFloat(".98") = 98;
parseFloat(“s.98”) = NaN;
JS运算符
算数 + - * / % ++ – “%” 取余
var b = a++; 先将变量a的值赋给变量B 然后再见变量a +1
赋值运算符 = += -= *= /=
字符串运算符 + +=
字符串只能进行“连接”运算 ,不能进行其他运算
比较运算符 > < >= <= == != ===
(全等) !==(不全等)
逻辑运算符 && 、 ||、 !
&&与
|| 或
! 非
window.prompt()
功能:弹出一个输入框,让用户输入内容
语法:var year = window.prompt(text[,defaultText])
参数:text 提示信息
defayltText: 可选项,也就是可有可无
返回值
如果单击确定按钮,返回一个字符串的数据
如果单击取消按钮,返回一个null
三元运算符: ?:
条件表达式?结果1:结果2;
a > b ? a : b; a>b 输入a的内容 a< b 输入b 的内容
特殊运算符
- new运算符:创建一个对象 例如 var tiday = new Date();
- delete 运算符:删除数组的元素,或者对象的属性。
- typeof运算符: 一元运算符,主要功能:判断变量的类型 例如 typeof name 或者tyoeof(name)
- 点运算符(.) 主要应用在对象中,通过点运算符(.)去调用属性或方法。
- [] 只要用来访问数组元素 如a[0] =10 找到下标为0的a的数组 重新赋值
运算符优先级
switch
根据一个标量的不同取值,来执行不同的代码
语法结构:
switch(条件判断)
{
case 值1:
代码1;
break;
case 值2:
代码2;
break;
case 值3:
代码3;
break;
default:
如果以上条件都不满足,执行该代码
}
if多条件和switch的区别
if的条件一般是一个范围
switch的条件一般是一个变量的不同取值
while循环
条件成立 无限循环
while的条件为true,则会重复不断的执行循环体的语句
在循环体中,必须要有"变量更新的语句。 不然会无限循环
for循环
for(变量初始化;条件判断;变量更新)
{
循环体代码;’
}
break语句
无条件结束语句
continue语句
结束当前循环 进入下轮循环
数组的创建方法
- 使用new 关键字和array()函数来创建数组
var arr=new Array();//创建一个空数组
var arr=new Array(“周更胜”, “男”,“30”);创建数组并初始化数据 - 使用中括号的方式创建数组
var arr=[“ccc”,“c”,“34”];
删除数组
delete arr[3] 删除下标为3的arr数组的值
函数
函数,是将一段公共的代码。给它起个名字叫函数
函数可以一次定义 多次使用
函数,可以将常用的功能代码,进行封装。如:用户名的验证、验证码函数、邮箱验证、手机号码验证、
函数的定义格式
function functionName([参数1][,参数2][,参数N]){
函数的功能代码
[return 参数r]
}
- 函数的调用
函数调用才会有效果,函数定义是没有用的
调用: 直接写函数名后跟小括号(),如果有参数写参数
函数的参数
形参的个数要和实参的个数一致
全局变量和局部变量
- 全局变量: 可以在网页的任何地方(函数内部和外部)使用的变量,就是全局变量
全局变量在网页关闭时,自动消失释放空间 - 局部变量: 只能在函数内部使用的变量,称为“局部变量”局部变量在函数内部定义,在函数内部使用,在函数外部无法访问,局部变量在函数执行完毕就消失了。
在函数内没有var的是全局变量
- 引用传值
复合数据类型的存储分两步:
- 将变量名和数据地址存在“快速内存”“栈内存”中
- 具体的数据存在"慢速内存"“堆内存”中
- 将一个变量的数据地址,“拷贝”一份,传给另一个变量,这两个变量,指向“同一个地址”
- 共享同一份数据,如果其中一个变量的值发生改变,那么另一个变量的值,也会改变
基本数据类型存在“快慢内存”“栈内存”中的,因为,基本数据类型只有一个变量名和一个变量值
匿名函数
var a = function(name,age){
window.alert(name + "的年龄是:"+ age +"岁");
}
a(“张三”,25);