JavaScript初级学习笔记

一、关于JavaScript
1、什么是JavaScript?
JavaScript是一种面向对象的程序语言。
在程序中,对象是有“属性”和“方法”构成的。
一个“东西”就是“对象”。
“对象”的“属性”就是自身的特征,如:身高、体重、年龄等。
“对象”的“方法”就是动作或者行为,如:开车、打游戏等。
JS程序可以在多种平台下运行——跨平台,如:Windows、Linux、OS X等。
JS只能在客户端的浏览器来运行,不能在服务器端运行——客户端脚本程序。
2、JavaScript能做什么?
表单验证:JavaScript的基本功能。
动态HTML:实现一些动态的、重复的效果。
交互:人机交互,通过键盘或者鼠标,与网页中的元素进行交互。
数据绑定:HTML中表单和表格能够以.txt文件定义的数据源,通过对位于服务器端的数据源文件的访问,便可以将数据源中的数据传送到客户端,并将这些数据保存在客户端。
少量数据查找:能够实现在当前页面中进行字符串的查找和替换。
AJAX核心技术:AJAX即异步JavaScript+XML。该对象提供一种支持异步请求的技术,使客户端可以使用JavaScript向服务器提出请求并处理响应,但并不影响用户在客户端的浏览。
3、<script></script>标记
同一网页中,可以有HTML代码、CSS代码、JavaScript代码。
通过<script></script>来引入JS程序代码。
4、其他
注释:
HTML的注释:<!--注释内容-->
CSS的注释:/*注释*/
JavaScript的注释:///*多行注释*/
常用输出方法
①、document.write(str)
描述:在网页中输出str的内容。
document是一个文档对象,代表整个网页。
write()是document对象的一个输出方法。
“.”:通过小数点(.)来调用对象的方法。
str:表示要输出的内容。
②、window.alert(str)
描述:在当前窗口中弹出一个警告对话框,str为对话框中显示的内容。
window代表当前浏览器窗口,window是一个窗口对象。
alert()方法:弹出一个对话框。
str:表示要输出的内容。

JavaScript中每一条语句,一般以“;”结束。这个分号不是必须的,为了向PHP兼容,最好加上分号。

运算符和变量以及操作之间可以使用空格分开,可提高程序可读性。
如:var a = 100;

二、变量
1、变量的声明
格式:var 变量名=变量值
var是声明变量的系统关键字。
举例:
var name;//声明一个变量
var name,sex,age;//同时声明多个变量,用逗号隔开
var name=“张三”;//声明变量并赋值

2、变量的命名规则
变量名可以包含字母、数字、下划线。
变量名不能以数字开头,可以以字母或者下划线开头。
变量名不能是系统关键字。如:var、switch、for、try、case、while等。
JS中的变量名是区分大小写的。如:name和Name是两个变量。
JS中变量的名称一定要有意义。

“驼峰式命名”:第一个单词全小写,后边的每个单词首字母大写。如:var getUserName。
“下划线式命名”:所有单词全小写,中间用下划线连接。如:var get_user_name

3、变量赋值
语法:var 变量名=变量值
将“=”右边的“运算结果”赋给左边的变量,“=”左边只能是一个变量名,而不能是“运算表达式”。

4、变量的数据类型
“你多大鞋,我多大脚。”
变量的值是什么类型的,变量就是什么类型的。
JavaScript中的变量的类型有:
基本数据类型:数据型、字符型、布尔型、未定义型(undefined)、空型(null);
复合数据类型:数组(array)、对象(object)、函数(function)。

①数值型:可以进行算术运算的(加、减、乘、除)
数值型包括:整型、浮点型、NaN。
数值型中的特殊值NaN(not a number)不是一个数字。
当将其他数据类型转成数值型转不过去时,程序无法报错,这时将返回一个NaN值。

②字符型:用单引号或双引号引起来的一个字符串
单引号和双引号之间可以相互嵌套;单引号只能嵌套双引号;双引号只能嵌套单引号。
如果想在双引号内,再嵌套双引号,里面的双引号,一定要进行转义(\”)。

JavaScript中的转义字符是反斜杠()。
常用额转义字符有:\’、\”、\、\r、\n等。

注意:字符型变量可以使用“+”进行“连接”,但非算术运算。

③布尔型
布尔型又称逻辑型。只有两个值:true(真)、false(假)。

④未定义型
当一个变量定义,但未赋值时,将返回未定义型,未定义型的值只有一个undefined。
当一个对象的属性不存在,也返回未定义型。

⑤空型
当一个对象不存在时,将返回空型,空型的值只有一个null。
也可以理解为:是一个对象的占位符。
如果你想清除一个变量的值,可以将其赋值为null。

5、运算符
①判断变量的数据类型:typeof()
typeof()返回一个类型的字符串:”string”、”number”、”boolean”、”undefined”、”object”、”function”。
null、对象、数组这三种类型,都将返回”object”。

②从字符中提取整数和浮点数函数
parseInt()系统函数、全局函数
描述:在一个字符串中、从左往右提取整型。如果遇到非整型的内容,则停止提取,并返回结果,如果第一个字符就是非整数,则立即停止,并返回NaN。
parseInt(“120px”)=120
parseInt(“120.98”)=120
parseInt(“a120px”)=NaN

parseFloat()系统函数、全局函数
描述:在一个字符串中,从左往右提取浮点型;遇到非浮点型内容,则停止提取,并返回结果,如果第一个字符是非浮点型,则立即停止,并返回NaN。
parseFloat(“120px”)=120
parseFloat(“120.98”)=120.98
parseFloat(“.98”)=0.98
parseFloat(“a.98”)=NaN

三、JavaScript运算符
1、比较运算符:>、<、>=、<=、==、!=、===、!==
比较运算符的运算结果是布尔值(true或false)。
“==”等于:只比较两个变量的值,而不管类型。只要值一样,就返回true,否则返回false。
“===”全等于:既比较变量,也判断类型。如果类型和值都一样,返回true,否则返回false。

2、逻辑运算符:&&、||、!

3、三元运算符:?:
语法: 条件表达式?结果1:结果2
描述:如果条件为true,则执行“结果1”,否则执行“结果2”

4、特殊运算符
new运算符:创建一个对象。如:var today = new Data();//创建一个当前系统日期时间对象
delete运算符:删除数组的元素,或者对象的属性
typeof运算符:一元运算符,主要功能:判断变量的类型。如:typeof name或typeof(name)
点运算符():主要应用在对象中,通过点运算符(.)去调用属性或方法。如:window.alert(“OK”)
[]中括号:主要用来访问数组元素。如:arr[0]=1000;//找到下标为0的数组元素,并重新赋值

5、运算符的优先级


  • .、[]、new、() 级别最高
  • !、++、–
  • *、/、%
  • +、-
  • >、<、>=、<=
  • ==、!=、===、!==
  • &&、||、?:
  • =、+=、-=、*=、/=、%= 级别最低

特殊运算符>算术运算符>比较运算符>逻辑运算符>赋值运算符

四、函数
1、函数的定义格式

function functionName([参数1],[参数2],[参数N]){
函数的功能代码;
[return 参数r]
}

说明:
function:关键字,全小写
functionName:函数名称。函数名的命名规则与变量命名一样。
():参数。参数可有可无,多个参数之间用逗号隔开。参数不需要声明,直接使用。
{}:函数的功能。
return语句,用于向函数调用者返回一个值,并立即结束函数的运行。

在函数内部,省略关键字var定义的变量是“全局变量”

五、拷贝传值和引用传址
1、拷贝传值:基本数据类型都是“拷贝传值”。
拷贝传值,就是将一个变量的值“拷贝”一份,传给了另一个变量。
拷贝传值中的两个变量是相互独立的,没有任何联系。
基本数据类型存在“快速内存”“栈内存”中的。因为,基本数据类型只有一个变量名和一个变量值。

拷贝传值示例:

var a = 10;//声明变量
var b = a;//将变量a的值“拷贝”一份,赋值给变量b
a = 100;//重新给变量a赋值100
alert(b);//b = 10
alert(a);//a = 100

2、引用传址:复合数据类型都是“引用传地址”
复合数据类型的存储分两步:
(1)强变量名和数据地址存在“快速内存”“栈内存”中;
(2)具体的数据存在“慢速内存”“堆内存”中。
引用传址:将一个变量的数据地址“拷贝”一份,传给另一个变量。这两个变量,指向“同一个地址”。

var a = {name:"张三",age:20}
var b = a;//将变量a的地址赋值给变量b
alert(b.age);//输出结果为20
a.age = 30;//给对象变量a的属性age重新赋值
alert(b.age);//输出结果为30

六、匿名函数:没有函数名
匿名函数,不能单独定义额,也不能单独调用。
匿名函数一般作为数据给其他变量赋值。可以给普通变量、数组元素、对象的属性赋值。

示例:

var a = 10;//将数值赋给变量a,那么变量a就是“数值型”变量
var a = "abc";//将字符赋给变量a,那么变量a就是“字符型”变量
var a = function(name,age){//将函数赋值给变量a,那么变量a就是“函数型”变量
            window.alert(name+"的年龄是:"+age=“岁!”);
}
//调用函数
a("张三",20);
var b = a;//将变量a的地址“拷贝”一份传给了变量b
b("李四",11);

七、对象
1、对象的概念
对象是由“属性”和“方法”构成。
2、JS中对象分类
①JS内置对象:数组对象、日期对象、字符串对象。。。
②BOM对象:浏览器各组件对象,包括:window、document、location、history。。。
③DOM对象:文档对象,包括:所有的HTML标记,每一个HTML标记都是一个对象。
④自定义对象:根据自己项目需要,自己定义自己的对象。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值