语法规则
- JavaScript 是一种动态类型语言,也就是说,变量的类型没有限制,变量可以随时更改类型
- JavaScript对
换行、缩进、空格不敏感
- 每一条语句结束的时候要加上 分号 ;
- 注释
-
//
单行注释
-/* */
多行注释
-
变量
-
变量
是对“值”的具名引用。变量就是为“值”起名,然后引用这个名字,就等同于引用这个值。变量的名字就是变量名
。 - 变量是用
var
来定义,只有在定义之后,变量才能够使用
var a = 1;
上面的代码先声明变量 a
,然后在变量a与数值1之间建立引用关系,称为将数值1“赋值”给变量a
。以后,引用变量名a就会得到数值1。最前面的var,是变量声明命令
。它表示通知解释引擎,要创建一个变量a。
- 变量的命名规范
- 只能有英文的
字母
、数字
、下划线
、美元符号
、且不能
以数字开头、并且不能是JavaScript的保留字 - JavaScript 的变量名区分大小写,
A和a
是两个不同的变量。 - 变量名中
不允许使用空格
- 保留字有:
abstract、boolean、byte、char、class、const、debugger、double、enum、export、extends、final、float、goto implements、import、int、interface、long、native、package、private、protected、public、short、static、super、synchronized、throws、transient、volatile
- 只能有英文的
变量的作用域
- 变量可以分为:
全局变量
和局部变量
- 全局变量
在最外层声明的变量
- 在函数体
内部
,但是没有声明var 的变量也是全局变量
- 局部变量
- 在函数体内部的 声明的变量
//全局变量
var num = 10;
function ff3() {
console.log(num);
//局部变量
var num2 = 3;
}
数据的类型
-
数值型
(Number):整数和小数
最大值
Number.MAX_VALUE
, 正无穷Infinity
//数值型
var num = 100.5;
-
字符串型
(String): 文本 -
布尔值(Boolean
): 表示真伪的两个特殊值,即true(真)
和false(假)
-
Undefined
:表示“未定义”或不存在,即由于目前没有定义,所以此处暂时没有任何值,一般是变量
声明了 ,但是没有赋值
-
Null
:表示空值,即此处的值为空。 用typeof
检查类型时Object
-
对象(Object
):各种值组成的集合. -
typeof
运算符 可以返回一个值的数据类型
需要注意的事
Object
对象是引用类型
,其实的都是基本数据类型
var a = 100.0;
console.log(typeof a)
输出结果:number
- 连字符和 + 号, 如果加号两边都是数值,此时是加。否则,就是连字符。
console.log("我" + "爱" + "你"); //连字符,把三个独立的汉字,连接在一起了
console.log("我+爱+你"); //原样输出
console.log(1+2+3); //输出6
类型的强制转化
-
toString()
转化字符串类型,有返回值,需要注意的时Null
和undefiend
这2个类型,没有toString()
方法
//类型转化
var a = 123;
console.log(typeof a);
//转成字符串,次方法不会影响元变量
//此方法有返回值
var b = a.toString();
console.log(typeof b);
打印结果: Number String
-
String(参数)
函数强制转化 ,对undefined
和null
可以正常使用
var a = 123;
var c = String(a);
console.log(typeof c);
-
Number()
函数- 当字符串是
单纯数字
,就会转化为Number
类型 - 当字符串是 非数字内容,则转化为
Nan
- 当字符串是
空格
转化为0
- 当时布尔值时,
true是1
,false是0
undefiend转化是Nan
Null转化是0
- 当字符串是
//转化为Number
var str = "123";
str = Number(str);
console.log(typeof str);
//打印结果 number
var str = "cc";
str = Number(str);
console.log(str);
console.log(typeof str);
//打印结果:Nan
-
parseInt()
函数- 自动带有截断小数功能(取整,不四舍五入)
console.log(parseInt(5.8));
输出:5
-
parseInt()
带有自动净化的功能:
console.log(parseInt("365天每天都爱你10000次"));
输出:365
- 字符串转化数字
parseInt(“5”);
结果就是数字5。
- getElementById() 通过Id获取这个标签
- getElementsByTagName() 获取某类标签 是个复数
运算符
- 加(+)、 减(-),乘(*),除(/),取模(%):就是余数
- 乘方 Math.pow(3,4);
- 开根号 Math.sqrt();
+ 号运算符
- 当对``非Number值做运算的时候,会将这些值
转化为 Number
进行运算
var result;
result = true + false;
console.log(result);
结果:2
- 当数值行与
Null
运算
var result;
result = 2 +null;
console.log(result);
//null在转化为number类型时是 0
如果:2
- 数值型与
undefined
运算 结果是Nan
result = 2 + undefined;
console.log(result);
结果是 Nan
-
+
2边都是字符串的时候,是字符串拼接
var result = "hello" + " "+ "CC";
console.log(result);
结果 hello CC
- 任何值与
字符串
相加,其他类型转化为字符串类型
var result = 123 +"100";
console.log(result);
结果: 123100 字符串类型
关系运算符
大于号 >
< 小于号
= 大于或等于
<= 小于或等于
== 等于
=== 全等于
!= 不等于
!== 不全等于
- 注意关系运算符是和布尔值是对应的,返回的加过就是 true 和 false
console.log(5 <= 5); //true
console.log(6 <= 10); //true
console.log(6 <= 3); //false
console.log(5 == 5); //true
console.log(5 == 6); //false
- ==等等不严谨,会将不同类型的东西,转为相同类型进行比较
console.log("5" == 5); //true
console.log(56 == "56"); //true
- 全等于,就是三个等号===
- 前提是 类型完全一样 比如:都是字符串类型,或者 都是 数字类型
//全等于
console.log("56" === 56); //false
console.log(56 === "56"); //false
console.log("56" === "56"); //true
console.log(56 === 56); //true
逻辑运算符
&& 与(且)
|| 或
! 非
参与逻辑运算的,都是布尔值。也就是说,只有true、false才能参与逻辑运算,得到的答案,仍然是布尔值。
console.log(true || true); //true
console.log(true || false); //true
console.log(false || true); //true
console.log(false || false); //false
常用的语句
-
Alert() 弹出警示框
-
Console 控制台输出
-
document.write() 文档打印输出
//警告框
alert("警告语");
var a = 100.0;
//控制台输入
console.log(typeof a)
//prompt就是专门用来弹出能够让用户输入的对话框:
var b = prompt("哈哈请输入点什么东西吧");
//变量b可以获取到 用户输入的值
console.log(b);
网友评论