JS基础(2020.3.22)
JavaScript主要有三部分:
- 核心:(ECMAScript)描述了该语言的语法和基本对象
- 文档对象模型(DOM)描述了处理网页内容的方法和接口
- 浏览器对象模型(BOM)描述了与浏览器进行交互的方法和接口
JavaScript是一种解释型脚本语言,依靠浏览器内置的JavaScript引擎进行解析。基于对象(Object-Based),提供了大量的内置对象,诸如String、Number、Boolean、Array、Data、Math、RegExp等,但是依然需要自己创建对象。JavaScript是一种弱类型语言,不强制检查变量的类型,是动态的,直接对用户和客户的输入做出响应,无需经过web服务程序。他对于用户的响应,是采用事件驱动的方式进行的。所谓事件就是指在主(homepage)中执行了某种操作所产生的动作,例如按下鼠标、移动窗口、选择菜单等都可以视为事件。当事件发生后,可能会引起相应的事件响应,即事件驱动。
JavaScript常用的输出语句:
- 使用windows.alert()弹出警示框。
- 使用document.write()将内容写道HTML文档中。
- 使用innerHTML写入到HTML元素。
- 使用console.log()写入到浏览器的控制台。
JavaScript数据类型
- 数字(number)是最基本的数据类型。JS不区分整型数值还是浮点型数值,所有的数字都是浮点型。
- 整形数据:常见整数
十六进制:以“0X”或“0x”打头
八进制:以“0”打头
浮点型数据:必须包含一个小数点
toFixed() 方法4. toFixed() 方法
toFixed() 方法可把number四舍五入为指定小数位数的数字,返回值为string类型。
var num = 3.456789;
var n=num.toFixed(); //将一个数字,不留任何小数:n 的值为3
var num = 3.456789;
var n=num.toFixed(2); //将一个数字,留2位小数:n 的值为3.46
alert(typeof n); // string
- 字符串(String)类型:没有单个的char类型字符,最小的字符必须用字符串,在内部输入单双引号时,可以在单引号中加入双引号,也可以在双引号中加入单引号,或者直接用转义字符转义。
- 布尔(Boolean)类型:所有的不为0的字符串,其布尔值均为1。
- 特殊类型数据:
1.转义字符
以反杠开头的,不可显示的特殊字符通常称为控制字符,也被称为转义字符。通过转义字符可以在字符串中添加不可以显示的特殊字符,或者避免引号匹配混乱。
在document.write( )语句中使用转义字符时,只有将其放在格式化文本标签
中才会起作用。如:document.write("<pre>努力学习\nJavaScript语言!</pre>");
2.未定义值
未定义类型的变量是undefined,表示变量还没有赋值(如var m;),或者赋予一个不存在的属性值(如var m=String.noproperty;)。
此外,JavaScript中还有一种特殊类型的数字常量NaN,即“非数字”。当程序由于某种原因计算错误后,将产生一个没有意义的数字,此时JavaScript返回的数值就是NaN。
3.空值
JavaScript中的关键字null是一个特殊的值,它表示值为空,用于定义空的或者不存在的引用。这里必须注意的是,null不等同与空字符串("")和0。
json的遍历
- 什么是json:json全称是JavaScript Object Notation,是一种轻量级的数据交换格式,是独立的语言,易于理解。json格式在语法上与创建JavaScript是一样的。
- json语法规则:数据为"键/值",数据由逗号隔开,大括号保存对象,中括号保存数组,如:
"name":"Runoob"
- json对象:json对象保存在大括号里,就像在JavaScript中,对象可以保存多个"键/值"对。
{"name":"Runoob", "url":"www.runoob.com"}
- json数组:json数组保存在中括号中,数组可包含对象。
"sites":[{"name":"Runoob", "url":"www.runoob.com"}, {"name":"Google", "url":"www.google.com"}, {"name":"Taobao", "url":"www.taobao.com"}]
- json字符串转换为JavaScript对象:通常我们从服务器中读取json数据,并在网页中显示数据。我们通过 json.parse() 和 eval() 函数来转换为JavaScript对象。
数据类型的自动转换
所有的数据类型和字符串用“+”连接时,其他类型会转换为字符串,其他的运算符“-”、“*”、“/”、“%”都会转换成Number类型。