文章目录
简介
网页、网站、应用程序
- 网页:单独的一个页面(html、css)
- 网站:一系列相关的页面组合在一起
- 应用程序:可以和用户产生交互,并实现某种功能
前端三层
HTML
- 结构层,从语义的角度来描述页面
CSS
- 样式层,从美观的角度描述页面的样式
Javascript
- 行为层,从交互的角度描述页面行为
- 应用场景
- 网页特效、app(Cordova)、游戏开发(cocos2d-js)
- 服务端开发、命令行工具(node.js)
- 桌面程序(Electron)
- 控制硬件-物联网(Ruff)
JavaScript
发展
-
运行在客户端的脚本语言,最早在HTML网页上使用,来给HTML网页增加动态功能
-
浏览器是一种运行js脚本语言的客户端,javascript解释器称之为js引擎,为浏览器的一部分
-
核心标准发展:1997年发布标准ECMAScript1,然后一直到2011年成为ISO国际标准,2015年发布ECMAScript2015,往后以年份命名
组成
- ECMAScript:语法、变量、变量 的使用方式
- DOM:文档对象模型,组成文档树
- BOM:浏览器对象模型,实现弹窗页面的跳转
计算机组成
**应用软件:**浏览器、QQ、sublime在线编辑器
**系统软件:**操作系统,windows、linux、os
**硬件:**三大件:CPU、内存、硬盘;输入设备;输出设备
书写语法
书写位置
- 行内,直接写在标签中
- 写在script标签内部
- 外联式,用script标签src属性添加进来
注释
- 块级注释/**/
- 单行注释//
alert语句
alert("这是以一个弹窗")
-
警告警示
-
在浏览器中弹出警示的内容
-
alert语句作为一个函数,后面紧跟着(“字符串”)
-
语句后面的分号是必要的,对换行、缩进、空格不敏感
-
js中没有特殊的控制结构一般都是从上往下、从左往右进行加载的
prompt语句
prompt("请输入您的年龄","默认显示内容")
- 给用户提供一个输入框,可以输入内容并且能够获取到内容
console控制台
console()
- 控制台内部可以查看HTML\CSS代码,甚至可以调试代码错误,F12右击点击审查元素
- 直接在控制台输入相关JS代码,可以快速执行代码
- 作为内置对象,内部封装了大量属性和方法(函数),通过.来进行调用执行console.log(),在控制台进行打印输出内容
- 不会产生阻塞的效果,用户一般不会看到具体内容
数据类型
字面量
概念
- 字面量(literal)是用于表达一个固定值的表示法,又叫做常量,所见即所得,js程序执行到代码的字面量,就立即知道它是什么数据类型,值是多少
- 表示固定值,数字,字符串,undefined,布尔类型等
数字字面量
-
数学意义上的数字,有整型字面量、浮点数字面量、特殊值
-
书写的时候直接进行书写,不需要添加别的辅助符号
NaN
- not a number不是一个正常的数,是Number类型的,但是没办法具体表示
- 与任何值都不相等,包括它自己本身
Infinity无穷
- 有着Number.MIN_VALUE和MAX_VALUE范围来衡量Infinity和-Infinity
- 本身可以表示一个数字进行输出显示
浮点数
- 数学概念里面的小数,包括整数、小数点、小数部分
- 不区分进制,一般都是十进制下的数字,数字在0-1之间,整数0可以忽略不写
- 科学计数法 1.2e-4=0.00012
- 精度问题
- 最高精度是17位小数,浮点数进行运算结果可能不一致
整数
- 十进制、八进制(0o)、十六进制(0x)的不同表现形式
- 前缀和后面数字不一致的情况,会直接报错,以0 前缀开头默认为十进制数
字符串字面量
- 字符串是由任意个数的有序和无序的字符字符组成的串,可以是字母、汉字、特殊符号、空白等
- 字符串包括了双引号,那么外部的引号必须为单引号
- 特殊功能的字符可以用\转移符号进行转换(\t表示缩进)
变量
概念
- 计算机内存中存储数据的标识符,根据变量的名称可以获取到内存中存储的数据
- 相当于一个容器,内部可以存放任意类型的数据
变量声明
var a=1;
-
变量定义
- 由字母、数字、下划线、$符号组成,字母是区分大小写的
- 不可以是关键字(js中有特殊功能的小词语)和保留字(现在没有特殊功能,将来会有的)
- 变量的命名采用驼峰命名法,uesrNumber
-
变量赋值
- 默认初始存储的是undefined的值
- 通过等号=赋值来对变量进行数据的存储
数据类型
-
简单数据类型
-
Number 数字类型
- 数字类型,你区分整数、浮点数、特殊值
-
String类型
- 所有用引号包裹的字符串都是string类型
-
Boolean类型
- 只有true(1)和false(0)两种类型
-
Undefined类型
- 未定义
-
Null类型
-
表示一个空对象的指针,定义变量将来用于存对象
还有特殊数据类型object对象
-
-
-
检测数据类型
-
typeof()
- 将想要检测的内容放在小括号里,这样就可以返回类型
- 也可以当作关键字来使用
-
变量的数据类型
- 并不是一个单独的数据类新
- 变量的数据类型会随着内部存储的数据发生变化
-
-
数据类型转化
-
转换为布尔类型
Boolean("123")//true 转换为false的:NaN、0、“ ”空字符串、null、undefined 转换为true的:非空字符串、非0、非NaN数字
-
转换位数值类型
-
Number(数据)方法,可以用于任何数据类型
Number("123")//字符串若为纯数字则转换为数字,如果空或者空白字符转化为0,若非空或者非纯数字就会转化为NaN(不是数字) //Boolean布尔类型转换为true(1),false(0) //undefined类型就会被转化为NaN,null空对象就会被转化为0
-
parseInt()方法,字符串转整数
console.log(parseInt(23.1235))//23 console.log(parseInt("123a.12"))//123 console.log(parseInt("abc.123"))//NaN a.对浮点数进行取整操作 b.将字符串转化为整型数字,必须以数字字符开头的字符串
-
parseFloat()方法,字符串转浮点数方法
console.log(parseFloat("123.456"))//123.456 console.log(parseFloat("123.4abc"))//123.4 console.log(parseFloat("a123.4"))//NaN
-
应用,获取用户传入的内容然后将其转化为字符串
var num=prompt("请输入你今年的年龄") console.log(typeof(num))//string console.log(parseInt(num)) var age=num+50;将内容转化为数字类型后就可以进行处理
-
-
转换成字符串类型
-
数据.toString(),不可以转化undefined和null
true.toString
-
String(数据),可以转化数字、undefined、null
String(123)
-
+号拼接字符串方法
console.log("1"+2)//只要➕两边有字符串就可以将其转化为字符串,加一个“”空字符串就可以将别的数据类型转化为字符串类型
-
-