前端知识学习----JS基础语法(1)

1.变量名定义规则:

变量名区分大小写,允许包含字母,数字,美元符号和下划线,但是第一个字符不允许是数字,不允许是空格和其他标点符号;
变量命名长度应尽可能的短,并抓住要点,尽量在变量名中体现出值得类型,尽量避免使用没有意义的命名;
禁止使用JS关键字,保留字命名。

2.JS的数据类型:

JS有五种基本数据类型:undefined,null,string,number,boolean
还有一种特殊的为: object
在es6中新增了symbol数据类型

注: 可以使用typeof判断值数据类型,引用类型可以使用instanceof

number: 表示整数和浮点数;
NaN是特殊的数值表示非数值;
注: 1.任何涉及NaN的操作都会返回NaN; 2.NaN与任何值都不相等,包括NaN本身。
可以使用isNaN(n)来检测n是否为非数值,其中isNaN()接收到参数时会尝试将参数转换为数字,再去检测参数是否为非数值,因此你会发现var a =”16”; isNaN(a) 返回值为false。

3.数据类型转换:

非数值转换为数字有三个函数:

1.Number() 可以用于任何数据类型;
2.parseInt()
3.parseFloat() 这两个函数专门用于字符串转换为数值;
以上三个方法转换值必须以数值开头,非数值开头转换后为NaN;

值转换为字符串有两个函数:

1.str.toString();
2.String(str);
在不知道转换的值是不是null或者undefined的情况下,可以使用String(),它能将任何类型转换为字符串。

值转换为布尔值有一个函数:(这个很重要)

Boolean();
注:除0之外的所有数字,转换为布尔型都为true; 除”“之外的所有字符串,转换为布尔型都为true;null和undefined转换为布尔型为false。

4.操作符分类

1.算数操作符: +,—,* ,/,++,— —

需要注意的是a++:先返回a,再返回递增之后的值;++a:先返回递增之后的值。
例如:

var a = 5,b=4;
var c = ++a + b++;
console.log(c);  //10
console.log(a);  //6
console.log(b);  //5
2.逻辑运算符(重点): &&与 ,||或, !非

&&与(只要有一个条件不成立,即返回false)
说明: 在有一个操作数不为布尔值的情况,逻辑与操作不一定返回布尔值,此时它遵循以下规则:
1.如果第一个操作数隐式类型转换后为true,则返回第二个操作数;
2.如果第一个操作数隐式类型转换后为false,则返回第一个操作数;
3.如果有一个操作数是null,NaN,undefined,则返回null,NaN,undefined;

|| 或 (只要有一个条件成立,即返回true)
说明:在有一个操作数不为布尔值的情况,逻辑或操作不一定返回布尔值,此时它遵循以下规则:
1.如果第一个操作数隐式类型转换后为true,则返回第一个操作数;
2.如果第一个操作数隐式类型转换后为false,则返回第二个操作数;

!非
说明: 1.无论操作数是什么数据类型,逻辑非都会返回一个布尔值;
2.!! 同时使用两个非操作符时:第一个非无论操作数是什么数据类型,都会返回一个布尔值;第二个非是对第一个非返回的结果作非操作。

3.赋值操作符:=,+=,—=,*=,/=,%=

a+=5 —> a=a+5;
a%=5 —> a=a%5;
str += “woow” —-> str = str + “woow”;

4.比较操作符: <,>,<=,>=,==,===,!=,!==

需要注意的:(以下4种全部返回布尔值)
==:相等,只比较值是否相等;
===:相等,比较值相等的同时比较数据类型是否相等;
!=:不相等,只比较值是否不相等;
!==:不相等,比较值不相等的同时比较数据类型是否也不相等;

例如:

var x = 10,y="10";
console.log(x==y);  //true
console.log(x===y); //false
console.log(x!=y);  //false
console.log(x!==y); //true
5.三元操作符

语法: 条件 ? 执行代码1: 执行代码2
效率高于if,条件成立时,执行代码1,否则执行代码2。

你可能感兴趣的:(JS,前端开发)