JavaScript 是世界上最流行的编程语言。
这门语言可用于 HTML 和 web,更可广泛用于服务器、PC、笔记本电脑、平板电脑和智能手机等设备。下面就来简单介绍一下JavaScript的基础语法
一.js的书写
二.js的注释
// 表示js中的单行注释
三.变量的声明
必须是先声明后赋值,当然也可以是空变量
四.变量的命名规则
1.必须语义化(见其名知其意)
var banner; var nav; var num;
2.只能以字母,_,$开头
3.不能有中文
4.绝对不能使用关键字或保留字
var var = 10; ×
5.尽量驼峰式
var lastindex;
小:一般情况下
var lastIndex;
大:特殊场景下(构造函数名)
var LastIndex;
6.小技巧:给变量名加前缀(功能,结构,页面,数据类型,开发者,公司名)
banner_img nav_img list_img
关键字:就是已经被赋予了功能的单词
保留字:就是将要被赋予功能的单词
五.显示计算机的运行结果
字符:非空为true
数值:非0,为true
NaN,null,undefined为false
对象,数组,函数为true
六.js的数据类型
字符型数据String: 只要使用引号引起来的数据,都是字符,引号包括:单,双,反
数值型数据 Number:0-9,NaN
布尔型Boolean:true真,false假
undefined:undefined:声明了,但未赋值
null:表示一种状态,空的状态,状态不能通过计算得到,直接设置
对象Object:标志是{}
数组Array:标志是[]
函数 Function:标志是function
七.数据类型的检测
var:用来声明变量
typeof:用来检测数据或变量的类型
八.数据的转换方法:
1.字符转数值:
parseInt(要转成数值的字符变量或字符数据);
parseInt的转换,会从左向右依次检测字符,如果遇到非数字的内容,就停止转换,如果遇到数字,就直接转换;如果第一位就不是数字,那么直接NaN;不识别小数点
parseFloat(要转成数值的字符变量或字符数据);
parseFloat的转换,会从左向右依次检测字符,如果遇到非数字的内容,就停止转换,如果遇到数字,就直接转换;如果第一位就不是数字,那么直接NaN;能识别小数点
Number(要转成数值的字符变量或字符数据);
不是专门用来转换的,附带功能可以转数值
严格转换,不允许任何位置出现非数字内容
Math.round(要转成数值的字符变量或字符数据);
不是专门用来转换的,附带功能可以转数值
严格转换,取最近的整数
2.数值转字符:
数值的变量.toString(); 类似于直接套引号
数值的变量.toFixed(n); 可以保留n位小数,不够,补0;多了,取最近的数字
3.其他转布尔:
字符:非空为true
数值:非0,为true
NaN,null,undefined 为 false
对象,数组,函数为true
九.数学运算符
+号除了数学的加法之外,还可以进行字符串的拼接
字符串的拼接:+号两边只要有一边是字符,那么就是字符串的拼接
数学的加法:+号两边必须都是数值,才是数学的加法
+:只要有一边是字符,结果就是字符,意味着另一边被转成字符了
- , * , / , %:会将两边的数据,作为数值操作
十.赋值运算符
号:赋值运算符,会将右边的值或变量解析出来的值,放在左边的变量中,切记,左边一定得是一个变量(可以是自定义的,也可以是系统提供)
重新赋值就是覆盖
a = a + 10; 等价于 a += 10;
a = a - 10; 等价于 a -= 10;
a = a * 10; 等价于 a *= 10;
a = a / 10; 等价于 a /= 10;
十一.比较运算符
, < , >= , <= ,当两边都是字符时,会触发字符的比较规则(字符的比 较规则:逐位比较,得到结果,就返回,如果一致,继续向后比,直到得到结果,或结束)
, < , >= , <= , == , !=:隐式转换规则:只要有一边是数值,就以数值运算
=:不存在隐式转换,严格相等,除了比较值,还比较类型
!:不存在隐式转换,严格比较,除了比较值,还比较类型
十二.逻辑运算符(主要运算的是布尔值)
||或,&&且,!非
or and not
||或:只要有一边出现true,就是true,两边都为false,才是false
&&且:只要有一边出现false,就是false,两边都为true,才是true
!非:取反:非true为false,非false为true
十三.一元运算符
var a = 10;
自增:++
// 自增就是在自身变量的基础上+1
前自增:++a,先+1,再使用
console.log(++a); // 11
console.log(a); // 11
后自增:a++,先使用,再+1
console.log(a++); // 10
console.log(a); // 11
自减:–
// 自减就是在自身变量的基础上-1
前自减:–a,先-1,再使用
console.log(–a); // 9
console.log(a); // 9
后自减:a--,先使用,再-1
console.log(a--); // 10
console.log(a); // 9
!!!例子:
var n = 1;
var sum = n++ + ++n + n++ + ++n + n++;
console.log(sum); // 17
console.log(n); // 6
拓展:
js中三大特殊的值 undefined, NaN, null
1.undefined是变量声明(定义)了但未赋值
console.log(undefined);
console.log(typeof undefined);
var a;
console.log(a);
- undefined参与数学运算会得到NaN(而NaN,↓)
console.log( 1 + undefined); //NaN
console.log(undefined == 0); // f
console.log(undefined == 1); // f
console.log(undefined == true); // f
console.log(undefined == false); // f - NaN
console.log(NaN); //NaN
console.log(typeof NaN); //number
不是一个数字的数值型数据,非法的数值运算会得到NaN
console.log( NaN == NaN ); // f
NaN和任何数值都不相等,包括他自己(六亲不认)
4.null
console.log(null);
console.log(typeof null);
null被转成了NaN(而NaN,↑)
console.log(null == 0); // f
console.log(null == 1); // f
console.log(null == true); // f
console.log(null == false); // f
特殊之处:( 特殊的值,特殊记)
在数学运算时null被转成0,什么都没有
console.log(null + 1); // 1
console.log(null == undefined); // t
console.log(null == NaN); // f
console.log(undefined == NaN); // f
console.log(null === undefined); // f