1.1 js书写位置
- 写于body标签内部,script标签里。script 标签中type 属性,属性值"text/javascript" 表示 javascript为纯文本语言。
- 写于head标签内部,script标签里,通过src属性,以外链的形式引入js 文件。(推荐)
- JavaScript 脚本语言必须依托于html骨架,才能在页面中渲染出来。
1.2 js的注释
- <!--html多行注释-->
- /*css、js多行注释*/(快捷键 ctrl+shift+/)
- //单行注释(快捷键 ctrl+/)
1.3 alert语句
- alert语句后要添加分号,为了让解析器正常工作,同时提高解析器的效率
- js解析器在解析时,逐句进行解析,认为分号为一条语句的终结,如果没有分号解析器会一直解析,直到换行。
-
alert("1"); alert("2") //可以正常执行 alert("3")alert("4") //不可以正常执行 alert("5") alert("6") //可以正常解析,但是js在提交之前,会进行压缩,会去掉所有的空格和换行,最终依旧不能正常解析
- alert 语句解析顺序
- 通常情况下从上至下依次读取
1.4 控制台cosnole
- 作用
- 汇总js出现的错误代码(指明错误代码的类型、位置、总次数)
- 通过console.log打印语句
1.5 字面量
用于表事固定值的一种方法,也叫常量。常见的字面量有:数字、字符串、undefined、布尔类型的值。
- 数字字面量:整数(十进制,八进制,十六进制),浮点数(只能用十进制),特殊值(+-Infinity表示无穷,NaN)
- 字符串字面量:必须用一对引号包裹,可用转义字符(\+特殊符号)。例\n :换行;\t :制表符;\" :双引号
js 也支持幂的写法(e)
1.6 变量(variable)
- 可以把变量看作一个容器,里面可以存放任何数据。
- 变量声明关键字,var。var后紧跟空格,后加变量名(也称为变量标识符)。可同时定义多个变量,变量之间用逗号隔开。
- 变量必须先声明后使用。如果声明之后未定义则会报错undefined。
- 变量名命名规则:第一个字符可以是,字母下划线或者美元符号,其他字符还可以包含数字。
- js 严格区分大小写,不能占用关键字和保留字。
-
关键字:
break、else、new、var、 case、 finally 、 return、 void 、 catch 、for 、switch 、 while 、 continue、 function 、this 、 with 、default 、 if 、 throw 、 delete 、 in 、 try 、do 、 instranceof、 typeof
-
ECMA第3版定义的全部保留字:
abstract 、 enum 、int 、 short 、 boolean 、export 、interface、 static、 byte 、extends 、 long 、 super 、 char 、 final 、native 、synchronized 、 class 、float 、 package 、throws 、 const 、goto 、private 、transient 、 debugger 、 implements 、protected 、 volatile 、 double 、import 、public
-
- 变量声明的提升:js有一个很好的特性,当引用后面声明的一个变量时,不会报错,只会输出undefined,即使后面有定义。
- 原理:js在解析时,会先查看整个js 语句,将所有的 变量声明提升到js语句的最前面(预解析)。只提升声明,不提升赋值。
1.7 数据类型
- 简单的数据类型:
- number:数字类型。整数、浮点数、特殊数值
- string:字符串类型。
- undefined:undefined类型。
- Boolean:boolean类型。true/false。
- null:null类型。
- 复杂数据类型:
- object:对象。
- 数据类型检测
- typeof() 括号可有可无
- 变量的数据类型:js为动态语言,变量的数据类型也是变化的,取决于变量的赋值。
- 数据类型的转换:
- 数字类型转换为字符串类型
- 加号:不同数据类型之间的加号表示拼接。只有当加号两边都为数字类型时才是数学运算。
- 数字+" " 可将数字类型转换为字符串类型。
- 字符串类型转换为数字类型
- prompt 类似于alert,可以进行文字输入。有两个参数,第一个提示文本,第二个参数表示默认文本(可有可无)。输入的数据可以变量来接受,输入的数据类型均为string。
- 字符串转换为数字有3种方法,Number(),parseInt(),parseFloat()。
- Number()方法可以进行任何数据的转化,parseInt()和parseFloat()只能进行字符串的转化。
- parseInt()将字符串取整,会被忽略小数点和文字等。parseInt也有两个参数,第一个参数是要转换的字符串,第二个参数为进制。
- parseFloat()将字符串转化为浮点数。支持幂的写法,忽略第一个浮点数后面的所有东西。
- 数字类型转换为字符串类型