-
javaScript是什么?
-
javaScript(是一种运行在客户端(浏览器)的编程语言,实现人机交互效果)
-
作用: 1.网页特效(监听用户的一些行为让网页作出对应的反馈)
2.表单验证(针对表单数据的合法性进行判断)
3.数据交互(获取后台的数据,渲染到前端)
4.服务端编程(node.js)
3.组成: 1.ECMAScript:js基础核心语法
2.Web APls: DOM:操作文档,比如对页面元素进行移动,大小,添加删除等
BOM:操作浏览器,比如也免得弹窗,检查窗口的宽度,存储数据到浏览器
-
JavaScript书写位置:
- 行内式
- 内部式
- 外联式(src引入)
-
JavaScript的注释:
- 单行注释: 符号// 作用://右边这一行的代码会被忽略 快捷键ctrl+/
- 块注释:符号/* */ 作用:在/* 和*/之间的所有内容都会被忽略 快捷键:shiift+alt+A
-
输入和输出语法:
-
输入语句:
prompt('请输入您的姓名:')
作用:显示一个对话框,提示用户输入文字
2.输出语句:
ddocument.write('要出的内容')
//如果输出的内容写的是标签,也会被解析成网页元素
作用:在html中的body中输出内容
alert('要出的内容')
作用:页面弹出警告对话框
console.log('控制台打印')
作用:控制台输出语法,程序员测试使用
-
变量:
变量:就是计算机中用来存储数据的容器
注意:变量不是数据本身,一个用来存储数据的容器,理解为用来装东西的盒子
1.变量的使用(let 不能多次声明一个变量) :
变量值的交换:
2.变量的本质:
是程序在内存中申请的一块用来存放数据的小空间
3.变量命名规则与规范 :
1. 规则: 不能用关键字 关键字:有特殊含义的字符,JavaScript 内置的一些英语词汇。
例如:let、var、if、for等 ,只能用下划线、字母、数字、$组成,且数字不能开头 字母严格区 分大小写,如 Age 和 age 是不同的变
2.遵守小驼峰命名法: 第一个单词首字母小写,后面每个单词首字母大写。例:userName
let 和 var 区别:
在较旧的JavaScript,使用关键字 var 来声明变量 ,而不是 let。 var 现在开发中一般不再使用它,只是我们可能再老版程序中看到它。 let 为了解决 var 的一些问题。
var 声明: 可以先使用 在声明 (不合理) var 声明过的变量可以重复声明(不合理) 比如变量提升、全局变量、没有块级作用域等等
- 结论: var 就是个bug,别迷恋它了,以后声明变量我们统一使用 let
-
常量:
概念:使用 const 声明的变量称为“常量”。
使用场景:当某个变量永远不会改变的时候,就可以使用 const 来声明,而不是let。
注意:常量不允许重新赋值,声明的时候必须赋值
//声明一个常量
const G =9.8
//输出这个常量
console.log(G)
-
数据类型:
数据类型分为两类:基本数据类型,引用数据类型
1.基本数据类型:
-
number 数字型:
数字可以有很多操作,比如,乘法 * 、除法 / 、加法 + 、减法 - 等等,所以经常和算术运算符一起。 数学运算符也叫算术运算符,主要包括加、减、乘、除、取余(求模) +:求和 -:求差 *:求积 /:求商 %:取模(取余数)
NaN 代表一个计算错误。它是一个不正确的或者一个未定义的数学操作所得到的结果 NaN是粘性的。任何对 NaN 的操作都会返回 NaN
-
string 字符串型:
1.通过单引号( '') 、双引号( "")或反引号( ` ) 包裹的数据都叫字符串
2.+ 运算符 可以实现字符串的拼接。 口诀:数字相加,字符相
3.单引号/双引号可以互相嵌套,但是不以自已嵌套自已(口诀外双内单,或者外单内双)
4.模板字符串:`` (反引号)
内容拼接变量时,用 ${ } 包住变量
-
boolean 布尔型:
布尔类型只有两个值 false 和true
-
undefined 未定义型:
只声明变量,不赋值的情况下,变量的默认值为 undefined
-
null 空类型:
JavaScript 中的 null 仅仅是一个代表“无”、“空”或“值未知”的特殊值
现在null被认为是对象的占位符 技术上来说他仍然是个原始值 被ECMAScript沿用
-
检测数据类型:
typeof 运算符可以返回被检测的数据类型。
它支持两种语法形式:
1. 作为运算符: typeof x (常用的写法)
2. 函数形式: typeof(x)
-
类型转换:
转换的作用:JavaScript是弱数据类型,把一种数据类型的变量转换成我们需要的数据类型
隐式转换:系统自动将数据类型转换
1. + 号两边只要有一个是字符串,都会把另外一个转成字符串
2. 除了+以外的算术运算符 比如 - * / 等都会把数据转成数字类型
3.+号作为正号解析可以转换成数字型 任何数据和字符串相加结果都是字符串
显示转换:自己写代码告诉系统该转成什么类型
转换为数字型: Number(数据) 转成数字类型 如果字符串内容里有非数字,转换失败时结果为 NaN(Not a Number)即不是一个数字 NaN也是number类型的数据,代表非数字
parseInt(数据) :只保留整数
parseFloat(数据) 可以保留小数
转换为字符型:
String(数据)
变量.toString(进制)
// 🔔String(变量) let v1 = 10 console.log(typeof String(v1)) let v2 = 15 // 🔔变量名:toString(进制)可以将变量转换成 对应进制的字符串 console.log(typeof v2.toString(16))
布尔值类型转换(boolean):
🔔'' 0 NaN -0 undefind mull false 只有这7钟会转成boolean 的 false 其他的都是true
Boolean(变量) true | false
1. 字符串转换boolean 除了 ''会转成false 其他的 都是true
2.数字转换成boolean 除了 0 与NaN -0 会转成false 其他的 都是true
3.将undefined 转换成 boolean false
4.将null转换成boolean false