写在前面
1.什么是js?
JavaScript 是一种轻量级的脚本语言。“脚本语言”(script language), 其实指的是它不具备开发操作系统的能力,而是只用来编写控制其他大型应用程序的“脚本”,比如前端工程师使用js来控制浏览器。
JavaScript 也是一种嵌入式(embedded)语言。它本身提供的核心语法不算很多,只能用来做一些数学和逻辑运算。JavaScript 本身不提供任何与 I/O(输入/输出)相关的 API,都要靠宿主环境(host)提供,所以 JavaScript 只合适嵌入更大型的应用程序环境,去调用宿主环境提供的底层 API。
目前,已经嵌入 JavaScript 的宿主环境有多种,最常见的环境就是浏览器,另外还有服务器环境,也就是 Node 项目。
- js基本语法
在这里,我们就不对js的基本语法做过多的介绍,主要分为:
- 语句概念
- 变量概念/变量提升
- 标识符/注释/区块概念
- 条件语句
- 循环语句
更为详细的介绍可以参考阮老师js教程:
[js语法基础] https://wangdoc.com/javascript/basic/grammar.html
js里的数据
1.数据分类
js里的数据分为七种:
- 数值(number):整数和小数,比如1和2.22
- 字符串(string):文本,用单引号或者双引号表示,如:'hello'
- 布尔值(boolean):true/false
- undefined: 表示未定义
- null:表示为空值
- 对象(object):各种值的集合,数组和函数也是对象
- symbol (es6新增)
注:undefined和null的区别:没有具体的区别的,实际运用中,有一个惯例:有一个对象object,现在不需要赋值,定义为null;有一个非object的数据类型,现在不需要赋值,定义为undefined。
另外一个区别发生在转换为数值类型时,null会转换为0,而undefined会转换为nan
Number(null)
0
Number(undefined)
NaN
2.typeof 运算符
typeof运算符可以用来判断一个数据的类型:
typeof 123 // "number"
typeof '123' // "string"
typeof false // "boolean"
需要注意的是两个特例:null 和fn
typeof null
"object"
typeof function(){}
"function"
- js里的类型
js中大部分数据类型之间都可以进行转换,转换方式可以使用以下两种:
- String() //使用String()方法
- .tostring() //调用tostring方法
这里,对于常见的转换结果,总结在下面表中:
JS数据转换总结
网友评论