JavaScript详解语法和重点知识

目录

JavaScript基础语法

一 . JavaScript概述

1.概念

2.功能

3.JavaScript发展史

二 . 基本语法

1..与html相结合

2. 注释

3.数据类型

4.变量

5.运算符

6.流程控制语句

7.JS特殊语法

JavaScript基本对象

一.Function对象

1.创建

2.属性

3.特点

4.调用

二.Array对象

1.创建

2.方法

3.属性

4.特点

三 . Date:日期对象

1 . 创建:

2 . 方法:

四.Math(数学对象)

1.创建

2.方法

五 . RegExp(正则表达式对象)

1.正则表达式(定义字符串的组成规则)

2.正则对象

五 . Global

1.特点

2.方法

JavaScript  BOM   、DOM 、   事件


JavaScript基础语法

一 . JavaScript概述


1.概念

JavaScript概念:一门客户端脚本语言
a.运行在客户端浏览器中的。每一个浏览器都有JavaScript的解析引擎

b.脚本语言:不需要编译,直接就可以被浏览器解析执行了

2.功能


可以用来增强用户和html页面交互过程,可以来控制html元素,让页面有一些动态效果,增强用户的体验


3.JavaScript发展史


(1).1992年,Nombas公司,开发出第一门客户端脚本语言,专门用于表单的校验。命名为:C-- ,后来更名为:ScriptEase

(2).1995年,Netscape(网景)公司,开发了一门客户端脚本语言:LiveScript。后来,请来SUN公司的专家,修改为LiveScript。命名为JavaScript

(3).1996年,微妙抄袭JavaScript开发出JScript语言

(4).1997年,ECMA(欧洲计算机制造商协会),制定出客户端脚本怨言的标准:ECMAScript,就是统一了所有客户端脚本语言的编码方式。


JavaSxript=ECMAScript+JavaScript自己特有的东西(BOM+DOM)

ECMAScript:客户端脚本语言的标准


二 . 基本语法


1..与html相结合

(1).内部JS:定义<script>,标签体内容就是js代码
                                    (方法:<script>JS语法</script>)

(2).外部JS;定义<script>,通过src属性引入外部的js文件 
                                   (方法:<script src="外部JS文件夹">    </script>)
注意:(1).<script>可以定义在html页面任何地方。但是定义的位置会影响执行顺序。
           (2).<script>可以定义多个


2. 注释


(1).单行注释://注释内容         ctrl+?
(2).多行注释:/*注释内容*/      ctrl+shift+?


3.数据类型


(1).原始数据类型


a . number:数字。整数/小数/NaN(not a number 一个不是数字的数字类型)
b . string:字符串。字符串“abc”“a”  ‘edf’
c . boolean:true和false
d . null:一个对象为空的占位符(object)
e .  undefined:未定义。如果一个变量没有给初始化值,则会被默认赋值为undefined


4.变量


(1)变量:一小块存储数据的内存空间


(2)Java语言是强类型语言,而JavaScript是弱类型语言。


 a.强类型:在开辟变量存储空间时,定义了空间将来存储的数据类型。只能存储固定类型的数据
 b.弱类型:在开辟变量存储空间时,不定义空间将来存储数据类型,可以存储任意类型数据


(3)语法:


a . var 变量名=初始化值;
b . typeof运算符:获取变量的类型


注意:null运算后得到的是object

5.运算符


(1)一元运算符:只有一个运算数的运算符


 ++,--,+(正号)


a . 注意:

++,--:自增(自减)

++(--)在前,先自增(自减),再运算
++(--)在后,先运算,再自增(自减)


b.注意:

 在JS中,如果运算数不是运算符所要求的类型,那么js引擎会自动的将运算数进行类型转换
 例: 其他类型转换为number:
 * . string转number:按照字面值转换。如果字面值不是数字,则转为NaN(不是数字的数字)
  ** . boolean转number:true转为1,false转为0


(2) 算术运算符


 +(加),-(减),*(乘),/(除),%(取余)


  (3) 赋值运算符


 =,+=,-=……


 (4) 比较运算符


  >,<,>=,<=


 (5)逻辑运算符


 &&(与)         ||(或)         !(非)


其他类型转boolean:

a.number:0或NaN为假,其他为真
b.string:除了空字符串("")其他都是true
c.null&&undefined:都是false
d.对象:所有对象都为true

(6)三元运算符
?:表达式
var a = 3;
var b = 4;
var c = a > b ?1:0;
语法:
表达式?值1:值2;
判断表达式的值,如果是true则取值1,如果是false则取值2;

6.流程控制语句

(1).if.......else.......(同java一样)

(2)switch:

a.在java中,switch语句可以接收的数据类型:byte   int  short  char   枚举(1,5)   String(1,7)

b.

switch(变量):

              case 值:

c.在JS中,switch语句可以接受任意的原始数据类型

(3)while(同java一样)

(4)do.....while(同java一样)

(5)for(同java一样)

7.JS特殊语法

1.语句以  ; 结尾,如果一行只有一条语句则 ; 可以省略(不建议)

2.变量的定义使用var关键字,也可以不使用

a.用:定义变量时局部变量

b.定义变量是全局变量(不建议)

JavaScript基本对象

Function

Array

Boolean

Date

Math

Number

String

RegExp

Global

一.Function对象


1.创建

(1)

var fun = new Function(形式参数表,方法体);  //不建议用


(2)

function  方法名称(形式参数列表){
          方法体
}

(3)

var 方法名=function(形式参数列表){
            方法体
} 

2.属性


length:代表形参的个数

3.特点


(1)方法定义时,形参的类型不用写,返回值类型不用写
(2)方法是一个对象,如果定义名称相同的方法,会覆盖
(3)在JS中,方法的调用至于方法的名称有关,和参数列表无关
(4)在方法生命中有一个隐藏的内置对象(数组),arguments,封装所有的实际参数

4.调用


方法名称(实际参数列表);

二.Array对象


1.创建


var arr=new Array(元素列表);
var arr=new Array(默认长度);
var arr=[元素列表];

2.方法


join(参数) :将数组中的元素按照指定的分隔符拼接为字符串;
push() :将数组的末尾添加一个或更多元素,并返回新的长度。

3.属性


length:数组的长度

4.特点


(1)JS中,数组元素的类型可变的。
(2)JS中,数组长度可变的。


三 . Date:日期对象


1 . 创建:

var date=new Date();

2 . 方法:


toLocalString():返回当前date对象对应的时间本地字符串格式
getTime():获取毫秒值。返回当前如期对象描述的时间到1970年1月1日零点的毫秒值差
 

四.Math(数学对象)

1.创建

特点:Math对象不用创建,直接使用:

Math.方法名();

2.方法

random() :返回0~1之间的随机数,含0不含1。

ceil(x) :对数进行向上舍入

floor(x) :对数进行下舍入

round(x) :把数四舍五入为最接近的整数

3.属性:

PI

五 . RegExp(正则表达式对象)

1.正则表达式(定义字符串的组成规则)

(1)单个字符:[ ]

如:[a]  [ab]   [a-aS-B0-3_]

特殊符号代表特殊含义的单个字符:

\d :单个数字字符[a]

\w :单个单词字符[a-aS-B0-3_]

(2)量词符号

:表示出现0次或1次

:表示出现0次或多次

:出现1次或多次

{m,n}:表示 m<=数量<=n

m如果省略:{ ,n} :最多n次

n如果省略:{m,} :最少m次

(3)开始结束符号

^ :开始

$ :结束

2.正则对象

(1)创建

a.

var reg = new RegExp("正则表达式");

b.

var reg = new RegExp/正则表达式/;

(2)方法

test(参数):验证指定的字符串是否符合正则定义的规范

五 . Global

1.特点

Global特点:全局对象,这个Global中封装的方法不需要对象就可以直接调用。     方法名();

2.方法

encodeURI():url编码

dencodeURI():url解码

encodeURIComponent():url编码,编码的字符更多

dencodeURIComponent():url解码

JavaScript  BOM   、DOM 、   事件

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值