一、js 初识
1 介绍
JavaScript(简称JS)是一种运行在客户端的脚本语言,JavaScript的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。
2 特点
(1) 脚本语言。JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释。
(2) 基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。
(3) 简单。JavaScript语言中采用的是弱类型的变量类型,对使用的数据类型未做出严格的要求,是基于Java基本语句和控制的脚本语言,其设计简单紧凑。
(4) 动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。在访问一个网页时,鼠标在网页中进行鼠标点击或上下移、窗口移动等操作JavaScript都可直接对这些事件给出相应的响应。
(5) 跨平台性。JavaScript脚本语言不依赖于操作系统,仅需要浏览器的支持。因此一个JavaScript脚本在编写后可以带到任意机器上使用,前提上机器上的浏览器支 持JavaScript脚本语言,JavaScript已被大多数的浏览器所支持。 [6] 不同于服务器端脚本语言,例如PHP与ASP,JavaScript主要被作为客户端脚本语言在用户的浏览器上运行,不需要服务器的支持。所以在早期程序员比较青睐于JavaScript以减少对服务器的负担,而与此同时也带来另一个问题:安全性。
3 主要功能
1.嵌入动态文本于HTML页面。
2.对浏览器事件做出响应。
3.读写HTML元素。
4.在数据被提交到服务器之前验证数据。
5.检测访客的浏览器信息。控制cookies,包括创建和修改等。
6.基于Node.js技术进行服务器端编程。
二、js代码的书写位置
1、 写在 html 中的<script>中
2、 写在html 标签中
缺点:
-
js 和 html 强耦合, 不利用代码的维护
-
若 click 相应函数是比较复杂的, 则需要先定义一个函数, 然后再在 onclick 属性中完成对函数的引用, 比较麻烦
3、写在 js 文件中
① 编写js文件
② 在html文件中引入js文件
③ 直接在浏览器 控制台 写js代码
三、 js 变量
1、命名规则:
和Java命名规则类似,可以使用字母、数字、下划线、美元符号,但是名字不能以数字打头。
js也是大小写敏感的语言。
2、语法:
var 变量名 = 值;
四、数据类型
基本数据类型:
- 字符串(String)、数字(Number)、布尔(Boolean)、空(Null)、未定义(Undefined)、Symbol。
引用数据类型:
- 对象(Object)、数组(Array)、函数(Function)。
1、Number
可以表示十进制、十六进制和八进制的数。在进行运算时,十六进制或八进制的数会转换为十进制。
运算结果:
数值判断:NaN
- 表示不是一个数字,它不等于任何值。
- 使用isNaN() 可以判断某个值是否是数字,如果不是数字,返回true。如果是数字,返回false。
infinity表示无穷大。
2、string
- js 的字符串可以用单引号,也可以用双引号表示。
- length属性可以用来获取字符串的长度。
- 和Java一样,js的+除了可以做加法运算外,也可以进行字符串拼接操作。只要+两边有一边是String类型,则进行字符串拼接,如果是数字,进行加法运算。
3、Boolean
布尔型,有两种取值,true和false,计算机内分别存储0和1。
- 在 js 中,boolean类型的值可以参与运算,true看作1,false看作0
- Boolean()可以把其他类型的值转换为字符串类型,如果是数字的话,除了0是false,其他的数都是true,无论正负。如果是字符串,空字符串转换为false,其他的都是true
- 使用 new Boolean() 创建对象时,如果时传入0或false,对象中包含的就是false,反之为true
五、类型转换
使用typeOf可以判断某个元素的数据类型
1、转换为布尔型 Boolean()
除了 0,’ '(空字符串),null,undefined,NaN会转换成false,其它都会转换成true
2、转换为字符串 toString()
3、转换为数值型 Number()
Number()可以把任意类型的值转换成数值,如果要转换的字符串有一个不是数值的字符,则返回NaN,null会转换为 0 ,true转换为 1 ,false转换为 0
4、parseInt()
转换为整数,参数遇到第一个非数字字符就终止
5、parseFloat()
parseFloat会解析第一个小数点,遇到第二个小数点或者非数字字符时结束,如果解析的内容只有整数,结果为整数
六、运算符
1、算数运算符
+ - * / %
2、一元运算符
++,--
3、逻辑运算符
&& 与:两个操作数同时为true,结果为true,否则都是false
|| 或 :两个操作数有一个为true,结果为true,否则为false
! 非: 取反
4、关系运算符
< > >= <= == != === !==
==只进行值得比较,===会同时比较类型和值
5、赋值运算符
= += -= *= /= %=
6、运算符的优先级