JS特性
- 解释性语言,不需要提前编译
- 动态类型的语言
- 按照从上往下的顺序一行一行执行的
JavaScript代码能放在哪里?
- html文件中的head标签里,可以写一个script标签,里面放上JS代码
- 放在button的onclick属性中,点击按钮的时候,代码就会执行
- 放在a标签的href中,点击超链接是,代码就会执行
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script type="text/javascript">
console.log("This is javascript");
</script>
</head>
<body>
<button onclick="alert('You clicked me!');">click button</button>
<a href="javascript:alert('Greeting from a tag!');">click hypertext</a>
</body>
</html>
也可以将javascript代码写入一个外部的js文件当中,然后通过script标签进行导入。写入外部文件的好处是不同的html页面都可以引用它,也可以利用到浏览器的缓存机制。是比较推荐的一种方式。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script type="text/javascript" src="script.js"></script>
</head>
<body>
</body>
</html>
注意:script标签一旦用于引入外部文件,就不能在标签体里面写js代码了,即使写了浏览器也会忽略的。如果头铁,非得写,那就在新建一个script标签。
注释
注释有单行注释或者多行注释
/*
这是一个
多行
注释
*/
// 这是一个单行注释
数据类型
六种基本的数据类型:
- String
- Number
- Boolean
- Null
- Undefined
- Object
前五种为基本数据类型,而Object属于引用数据类型。
判断一个变量的类型,可以用typeof来检查。
var a = 123;
console.log((typeof a) == 'number'); // true
var b = "hello";
console.log((typeof b) == 'string'); // true
Number.MAX_VALUE -> JS数字的最大值,超过该值就会显示Infinity。
NaN -> Not a number,如果用typeof来检查,还是会显示为number。
Number.MIN_VALUE -> 0以上的最小的数字,表示正的最小数。
null专门用来表示一个为空的对象。如果用typeof检查,会返回“object”。
当申明一个变量但不给变量赋值时就是undefined,用typeof检查就是”undefined”。
强制类型转换
将其他数据类型转换为String
- 调用被转换类型的toString()方法。该方法不会影响到原变量,而是将转换的结果返回。但是要注意,null和undefined没有该方法。
- 调用String()函数并将被转换的数据作为参数传递给该函数。对于Number和Boolean底层还是调用的toString()方法,将null转换为”null”,将undefined转换为“undefined”。
将其他数据类型转换为Number
- 使用Number()函数并将被转换的数据作为参数传递给该函数。如果是纯数字字符串的话,直接将其转换为数字。如果字符串中有非数字内容,则转换为NaN。