javaScript基础 -笔记

JavaScript的组成

javascript是一种专为与网页交互而设计的脚本语言,由下列三个不同的部分组成:

ECMAScript,由ECMA-262定义,提供核心语言功能;

文档对象模型DOM(Browser   Object   Model),是HTML文档对象模型定义的一套标准方
法,提供访问和操作网页内容的方法和接口;

浏览器对象模型(BOM),提供了独立于内容与浏览器窗口进行交互的对象,使用浏览器对
象模型可以实现与HTML的交互,

javascript 的这三个组成部分,在当前五个主要浏览器(IE,Firefox,Chrome,Safari和
Opera)中都得到了不同程度的支持.其中,所有浏览器对ECMAScript第三版的支持大体
上都还不错,而对ECMAScript 5 的支持程度越来越高,但对DOM的支持则彼此相差比
较多.对已经正式纳入HTML5标准的BOM来说,尽管个浏览器都实现了某些众	所周知
的共同特性,但其他特性还是会因浏览器而异.

javaScript的执行原理
1、客户端请求某个网页,即我们在上网时在地址栏中输入某个网址,浏览器接收到
网址之后,向远程web服务器提出请求
2、web服务器响应请求,web服务器找到请求的页面,并将整个页面包含javascript
的脚本代码作为相应内容,发送回客户端机器
3、客户端浏览器解释并执行带脚本的代码,客户端浏览器打开回应的网页文件内容,
从上往下逐行读取并显示其中的html或者脚本代码,脚本是从服务器端下载到客户端,
然后在客户端进行的,即不占用服务器端的资源,因此通过客户端脚本,客户端分担
了服务器的的任务,大大的减轻了服务器的压力,从而间接地提升了服务器的性能

在网页中引用JavaScript的方式:
   内部JavaScript文件.
   
直接使用<script>标签将JavaScript代码加入HTML文档中.

   使用外部JavaScript文件
    直接在HTML标签中
    把脚本保存到外部文件中。外部文件通常包含被多个网页使用的代码.
    外部 JavaScript 文件的文件扩展名是 .js。
	如需使用外部文件,请在 <script> 标签的 "src" 属性中设置该 .js 文件:

实例:
<!DOCTYPE html>
<html>
<head>
	<script src="myScript.js"></script>
</head>
 <body>
</body>
</html>

JavaScript的基本语法

变量的声明和赋值

JavaScript是一种弱语言,没有明确的数据类型.变量是使用关键字 var 声明的:
var  变量名 = 值;

数据类型

undefined 未定义类型
undefined表示“未定义”,一个特殊值,通常用于指示变量尚未赋值。对未定义值的引用
返回特殊值“未定义”。类型定义代码 typeof(undefined) 返回未定义字符串。当将“未定
义”	转换为字符串时,它转换为空字符串。

null  空类型
number   数值类型

String  字符串类型
indexof(str,index)查找某个指定的字符串在字符串中首次出现的位置
charAt(index)返回在指定位置的字符
toLowerCase()把字符串转换为小写
woUpperCase()把字符串转换为大写
substring(index1,index2)返回位于索引index1和index2之间的字符串,并且包括索引
index1对应的字符串,不包括索引index2对应的字符
split(str) 将字符串分割为字符串数组

boolean   布尔值类型
typeof  运算符来判断一个值或变量究竟属于哪种数据类型语法格式
typeof(变量或值) 

数组
JavaScript中创建数组的语法格式:

创建
var 数组名称=new Array(size);
赋值
var stu = new Array(3);
stu[0]="小明";
stu[1]="小红";
stu[2]="小蓝";

var  stu = new Array("小明","小红","小蓝");

访问数组
可以通过数组的名称和下标直接访问数组的元素: 
数组名[下标];
stu[0];

数组的常用方法和属性
属性  length  返回数组中元素的长度
方法   join( ) 把数组的所有元素放入一个字符串,通过一个分割符进行分割
		sort() 对数组排序
		push()   向数组末尾添加一个或者多个元素,并返回新的长度

运算符
算数运算符:

加+,减—,乘*,除/,求余%,加加++,减减——,

加减乘除求余运算与数学上的用法完全一样。

不过,加号+还有连接字符串的作用,其他运算符还可以将字符串数字转换成数值型,参见JavaScript中数据类型转换总结中的隐式转换部分。

++,——分为前置和后置,前置表示在使用该变量之前加/减1,后置表示在使用之后加/减1。

逻辑运算符:

1.&&: 与运算, 当与运算的两个内容都为true的时候,结果为true,只要有一个内容为false,结果都是false,&& 可以读作“并且”

2.||: 或运算, 当或运算的两个内容都为false的时候,结果为false,只要有一个内容为true,结果都是true,|| 可以读作“或者”

3.!: 非运算, 取反运算,当内容为true时,取反结果为false,当内容为false时,取反结果为true

补充:

&&与||的其他用法

&&

如果两个操作数都不是布尔类型

且两个数值转换成布尔类型都是true,返回第二个操作数

如果有一个操作数转换成布尔类型是false,返回这个数

var b=undefined&&null

console.log(b);

返回undefined

||

如果两个操作数都不是布尔类型

第一个数转换成布尔类型为true,则不往下看,返回第一个数

如果第二个数转换成布尔类型为true,则返回第二个数值。

比较运算符:

( > , < , >= ,<= , == , ! = , ===,! ==)

, <, >= ,<=和数学里表示的含义完全一样。下面四个运算符刚开始接触会有点迷惑。

== 相等操作符

如果两个操作数相等,则返回 true。 

!= 不相等操作符

如果两个操作数不相等,则返回 true。

 这两个操作符都会先转换操作数(通常称为强制转型),然后再比较它们
 的相等性。在转换不同的数据类型时,相等和不相等操作符遵循下列基本
 规则:

1、 如果有一个操作数是布尔值,则在比较相等性之前先将其转换为数值—
—false 转换为 0,而true 转换为 1; 

2、如果一个操作数是字符串,另一个操作数是数值,在比较相等性之前先
将字符串转换为数值;
3、 如果一个操作数是对象,另一个操作数不是,则调用对象的 valueOf()
方法,用得到的基本类型值按照前面的规则进行比较;
这两个操作符在进行比较时则要遵循下列规则。
1、 null 和 undefined 是相等的。
2、 要比较相等性之前,不能将 null 和 undefined 转换成其他任何值。
3、 如果有一个操作数是 NaN,则相等操作符返回 false,而不相等操作符
返回 true。
重要提示:
即使两个操作数都是 NaN,相等操作符也返回 false;因为按照规则, Na
N 不等于 NaN。
如果两个操作数都是对象,则比较它们是不是同一个对象。如果两个操作
数都指向同一个对象,
则相等操作符返回 true;否则,返回 false。 

逻辑控制语句

	if()
	switch()
	while()
	for()
	for-in
	语法节
for (variable in object) {...}
variable
在每次迭代时,将不同的属性名分配给变量。
object
被迭代枚举其属性的对象。

注释

/* 多行内容 */
//单行内容

常用的输入输出

警告alert( )方法
提示prompt( )方法

定义和使用函数

常用系统函数

parseInt() 函数可解析一个字符串,并返回一个整数。

当参数 radix 的值为 0,或没有设置该参数时,parseInt() 会根据 string 来判断数
字的基数。

当忽略参数 radix , JavaScript 默认数字的基数如下:
如果 string 以 "0x" 开头,parseInt() 会把 string 的其余部分解析为十六进制的整
数。
如果 string 以 0 开头,那么 ECMAScript v3 允许 parseInt() 的一个实现把其后的
字符解析为八进制或十六进制的数字。
如果 string 以 1 ~ 9 的数字开头,parseInt() 将把它解析为十进制的整数。

语法
parseInt(string, radix)
string	必需。要被解析的字符串。
radix	可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。

parseFloat() 函数可解析一个字符串,并返回一个浮点数。

该函数指定字符串中的首个字符是否是数字。如果是,则对字符串进行解析,直到到达
数字的末端为止,然后以数字返回该数字,而不是作为字符串。

isNaN() 函数用于检查其参数是否是非数字值。

自定义函数

function 函数名 (参数1,参数2,参数3){
JavaScript语句;
}

调用函数
事件名="函数名()";

事件

onload 一个页面或一幅图像完成加载
onlick 鼠标单机某个对象
onmouseover  鼠标指针移到某个元素上
onkeydown 某个键盘键被按下
onchange  域的内容被改变	
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值