(建议收藏)JS基础入门二 - 核心语法

1.1 JS语法
严格区分大小写 例如: a 和 A是两个完全不同的东西
忽略所有的换行与空格 它们存在的目的就是为了提高程序的可读性
1.2 JS中的注释
html 中的注释: <!-- 注释文本 -->
css 中的注释: /* 注释文本 */
js中的注释:
// 单行注释
/* 多行注释 */
1.3 JS的引入
行内方式:借助的是html中的事件属性 如:onmouseover onmouseout onclick等
嵌入script代码:借助script标签,在script标签内书写 js 代码
引入外部的JS代码:借助script标签,引入外部独立的 js 文件
注:script标签可以嵌入到 html 文档的任何位置;
一个html文件中,可以嵌入多个script标签;
通过 src 属性引入外部 JS 文件的 script 标签内不能再去书写 JS 代码。
1.4 数据输出的方式
alert() 警告框 效果:会向页面弹出一个弹框,必须点击确定才能继续执行代码;会有阻塞效果
console.log() 控制台打印日志

二、常量
2.1 概述
常量:又称字面量,字面的意思就是你看到什么就是什么。在程序执行过程中不会发生改变。
如上面,在控制台输出的 "Hello Javascript!!" 就是一个字面量
常量分为:数值常量、字符串常量、布尔值常量等
2.2 数值常量
数值:整数(10,23)、浮点数(1.34,3.14)
生活中常见的进制数是十进制数,由 0 - 9之间的数字组成,逢十进一 如:10 20 34 56等等
程序中除了十进制外,可能还会碰到二进制、八进制、十六进制等进制数
计算机底层的运算,使用的是二进制补码的形式进行运算
二进制,由 0 和 1组成,前缀标识为 0b 如:0b1000 0111
八进制,由 0 - 7 之间的数字组成,前缀标识 0 、0o、0O 如: 0o76
十六进制,由 1 - 9,a-f 组成,a-f 代表的是 10 - 15之间的数字,前缀标识 0x 如: 0xa1f6
2.3 字符串常量
双引号或单引号进行包裹的文本 有点类似于生活中我们说的各种话 如: “Hello” "您好" '男'
如果想要添加一些特殊的符号,需要借助转义字符 "\",如下:
\n 换行
\t 制表符
\r 回车
\" "
\' '
\\ \
2.4 布尔值常量
布尔值有且只有两个: true 和 false
三、变量
3.1 概述
变量:用来存储信息数据的容器。在程序执行的过程中,可以发生改变。
信息数据:可以是上面讲过的常量、也可以是后面要讲的函数、数组、正则等等所有的东西。
3.2 变量的声明
变量使用关键字 var 进行声明。
语法格式 var 变量名 = 初始化值;
解释 将赋值运算符"="右边的初始化值 赋给 左边使用var声明的变量,那么此时这个变量在内存中开辟一个空间,存储初始化值。
举例 var str = "Hello"; var num = 10;

3.3 变量的命名规则
由数字、字母、下划线以及美元符号($)组成
数字不能开头
见名知意
驼峰式命名:首字母小写,多个单词,从第二个单词开始首字母大写 如:getMaxNum
尽可能简化命名的长度

3.4 多个变量的声明方式
第一种:每一个都是用 var 声明,分号结束
第二种:如果是连续声明多个变量,可以使用使用一个var,变量之间使用逗号隔开,最后分号结束即可

3.5 变量的提升
我们可以用先使用后面声明的变量,即使变量有赋值,也是 undefined

变量提升的原因:
浏览器中的JS引擎,在解析JS代码时,分为两步:预解析阶段 和 运行阶段。
预解析阶段:会审查JS中是否有声明语句,如果有,就将其提升到当前作用域内所有JS语句的顶部
运行阶段:进行赋值操作
所以上面,变量的提升演示部分代码,等价于下面的代码

四、变量数据类型
变量的数据类型分为两大类:基本数据类型 和 引用数据类型。
4.1 基本数据类型
Number数值类型:整数 10,20 小数 10.23 3.14 Infinity无穷大 NaN(Not a Number)不是一个数字
String字符串类型: 双引号或者单引号包裹的文本 如:var str = "Hello"; 那么变量str的数据类型就是字符串类型
Boolean布尔类型:有且只有两种值 true 和 false
Null空类型:空指针对象 它是一个特殊的对象
Undefined未被定义的:变量被声明,但是没有被赋值
4.2 引用数据类型
Object对象类型(所有内置对象都是这个类型,如:数字Array对象、字符串String对象、RegExp对象等)
Function函数类型
五、数据类型的检测
通过 typeof 关键字进行检测,检测语法如下:
typeof 变量名
typeof(变量名)

六、数据类型之间的转换
6.1 隐式转换
借助的是运算符 + - * / % 等等
运算符“+”可以是:数学的加运算、有字符串存在的情况下是字符串 拼接运算、正号

6.2 显式转换
借助内置的方法或者包装类实现
内置方法:
parseInt() 将其他数据类型转为整数类型;数值的取整
parseFloat() 将其他数据类型转为浮点数类型;浮点数
toString() 将其它数据类型转为字符串类型
包装类:
Number() 将其他数据类型转为数值类型
String() 将其它数据类型转为字符串类型
Boolean() 将其它数据类型转为布尔类型

七、prompt
prompt() 信息提示框;提示用户在指定的输入框内输入信息
prompt(msg,ipt) 方法
参数 msg 设置文本提示信息,字符串类型
ipt输入框中的内容,字符串类型
返回值 返回用户输入的数据,字符串类型
