JavaScript是什么
HTML:提供网页的结构,提供网页中的结构和内容。
CSS:来美化网页。
JavaScript:可以用来控制网页内容,给网页增加动态、交互的效果。
Java 是运行在服务器端的面向对象编程语言,JavaScript 是运行在客户端的脚本语言。
JavaScript的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML (标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。
●服务端开发(Node.js)
桌面程序(Electron)
App (Cordova)
●控制硬件–物联网(Ruff)
●游戏开发(cocos2djs)
JavaScript的组成部分
●ECMAScript - JavaScript的核心
ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协会, European Computer Manufacturers Association)通过ECMA-262标准化的脚本程序设计语言。JavaScript (网景)和JScript (微软)都是ECMA-262标准的实现和扩展。
ECMAScript是JavaScript的核心,定义了JavaScript 的语法规范,描述了语言的基本语法和数据类型。ECMAScript 是一套标准,定义了-种语言的标准,与具体实现无关。
●BOM -浏览器对象模型
一套操作浏览器功能的 API,通过BOM可以操作浏览器窗口,比如:弹出框、控制浏览器跳转、获取分辨率等。
●DOM -文档对象模型
-套操作页面元素的API,DOM可以把HTML看做是文档树,通过DOM提供的API可以对树上的节点进行操作。
JavaScript初体验
行内式
行内式是指将单行或少量的JavaScript代码写在HTML标签的事件属性中(也就是以on开头的属性,如: onclick) 。
内嵌式(嵌入式)
外部式(外链式)
注释
单行注释 //
多行注释 /**/
文档注释 /** */ 1:文档注释只能在js文件里使用,调用时会有智能提示。
变量
●变量的声明:
●变量的赋值:
●同时声明够个变量:
●同时声明多个变量并赋值:
变量的命名规则和规范
规则- -一必须遵守的, 不遵守会报错
●由字母、数字、下划线、$符号组成,不能以数字开头; .
●不能是关键字和保留字,例如for. while;
●区分大小写。
规范–建议遵守的,不遵守不会报错
●变量名必须有意义
●遵守驼峰命名法。首字母小写,后面单词的首字母需要大写。例如: userName、 userPassword。
数据类型
简单类型包括: Number、String、 Boolean、 Undefined、Null。
Number类型
●数值字面量:数值的固定值的表示法。
●进制。
●浮点数。
●数值范围。
●数值判断。
NaN: not a number,是- - 个值。NaN与任何值都不相等,包括他本身。
isNaN: is not a number, 是一个函数。
String类型
●字符串字面量。
●转义符。
字面量 含义
\n 换行
\t 制表
\b 空格
\r 回车
\f 进纸
\ 斜杠
’ 单引号('),在用单引号表示的字符串中使用。例如: 'He said, 'hey."。\
" 双引号("),在用双引号表示的字符串中使用。例如: "He said, “hey.”。
\xnn 以十六进制代码nn示的一个字符(其中n为0~F)。例如,\x41表示"A"。
\unnn 以十六进制代码nnnn表示的一个Unicode字符(其中n为0-F)。例如,\u03a3 表示希腊字符工。
●字符串长度: Tength属性用来获取字符串的长度。
Boolean类型
Boolean字面量: true和false,区分大小写。
●计算机内部存储: true为1,false为0。
Undefined
●声明一个变量,但是没有赋值;
●访问对象坏存在的属性或者未定义的变量;
●函数定义了形参,但没有传递实参;
●使用void对表达式求值。
Null
●如果定义的变量在将来用于保存对象,那么最好将该变量初始化为null, 而不是其他值。
●当一个数据不再需要使用时,我们最好通过将其值设置为null来释放其引用,这个做法叫做解除弓|用。
数据类型转换
转换成字符串类型
●toString()
string()函数存在的意义:有些值没有tostring(), 这个时候可以使用string() 函数。比如: undefined 和null。
●拼接字符串方式
num + “”,当+两边一个操作符是字符串类型,一个操作符是其它类型的时候,会先把其它类型转换成字符串再进行字符串拼接,返回字符串。
转换成数值类型
Number()
Number()函数可以把任意值转换成数字。
如果对象的值无法转换为数字,那么Number()函数返回NaN。
●parselnt()
●parseFloat()
parseFloatO)函数可以把字符串转换成浮点数。
parseFloat()和parseInt()非常相似,不同之处在于:
parseFloat会解析第一 个.,当遇到第二二个.或者非数字时结束。
如果解析的内容里只有整数,则解析成整数。
+、-、0等运算
转换成布尔类型
●Boolean()
0、’ '(空字符串)、nu11、 undefined、 NaN会转换成false, 其它都会转换成true。
算术运算符
●+
●一
●*
●/
●%
一元运算符
●++
●–
逻辑运算符(布尔运算符)
●&&:与运算
两个操作数同时为、true,结果为true,否则为false。
’ ||': 或运算
两个操作数有一个为true,结果为true,否则为false。
● ! : 非运算
逻辑值取反。
关系运算符(比较运算符)
< > >= <= == != === !==
== 与 ===的区别:
==表示相等,会在进行相等比较之前先进行必要的值类型转换; === 表示严格相等,运算符不会执行类型转换,如果两个值类型不同则直接返回false。
赋值运算符
= += -= *= /= %=
运算符的优先级
从高到低
- ():优先级最高
- 一元运算符:++、 --、!
- 算术运算符:先*、/、%、后+、-
- 关系运算符:>,>=,<,<=
- 相等运算符: == , != , === ,!==
- 逻辑运算符:先&&,后||
- 赋值运算符:=
引用外部js文件的script标签中不可以写JavaScript代码。 ↩︎