首页 > 代码库 > js.day01

js.day01

代码注释

@代码注释

//单行注释

/* 多行注释 */

书写多行注释的时候注意不要发生嵌套

 标签属性

@script标签的属性

type类型 src 地址

async异步加载,加载完成立即执行 defer异步加载,页面上的东西都执行完了才执行

2. 变量

 变量的命名规范

@变量的命名

规则(必须遵守)

区分大小写

不能是关键字和保留字

由字母、数字、下划线、$ 组成且开头不能是数字

 

规范(建议遵守)

 

变量的名称要有实际意义

 

变量的命名遵守驼峰命名法,首字母小写,第二个单词的首字母大写 例如:userName

 

 变量的声明赋值

 

@变量的声明和赋值

 

书写格式

 

var 变量名 = 值

 数据类型

 数据类型

声明的时候不用考虑类型,但是处理和计算的时候要考虑类型

基本数据类型

number数值型  string字符串型     boolean布尔型     undefined      未定义 null

复杂数据类型

object对象

使用typeof关键字可以查看变量的数据类型

 

1. 数值类型

 

@数值类型

 

字面量

 

var num = 数字;

 

浮点数

 

计算浮点数时会丢失精度

 

我们通常用整数的计算来表示浮点数的计算

 

不要以两个浮点数是否相等作为条件判断的依据(判断范围还是可以的)

 

NaN

 

NaN是数值类型

 

NaN不等于自身

 

isNaN( ) 不是有意义的数值返回true

字符串类型

@字符串型

字面量

var str = “字符串”;

字符串的长度

str.length

length就是长度的意思

 

布尔类型

 

@布尔类型

 

所有类型的值都可以转化成布尔值

 

会转化成false的值有: 空字符串 数值零NaN undefined null

 

 

 

undefined类型

 

@undefined

 

表示声明但未赋值的变量

数据类型转换

1.转换成数字

显式转换

我们可以通过代码,强制将一个字符串转换成为一个数字,所以显式转换也被叫作强制类型转换。

  1. 使用Nubmer对象将字符串转换成为数字。

var a = Number(“1234”);
console.log(“a = ” + a + “type = ” + typeof(a));  //1234 Number

使用Number对象可以将任意字符串转换成为数字类型,包括整数,负数以及浮点数(小数)。

 

  1. 使用parseInt函数将字符串转换成为数字。

var a = parseInt(”1234.5678”);
console.log(“a = ” + a + “type = ” + typeof(a));   //1234  Number

注意事项:parseInt只能够将字符串转换成为整数数字,会舍去小数位。

 

  1. 使用parseFloat函数将字符串转换成为数字。

var a = parseFloat(“1234.5678”);
console.log(“a = ” + a + “type = ” + typeof(a));  //1234.5678  Nubmer

parseFloat能够把字符串转换成为数字,并且保留小数位

 

注意事项:

不管使用以上三种方式中的哪一种方式将字符串强制转换为数字,只要字符串不能够转换成为有效的数字,就会被转换成为NaN.字符串转换成了Nan并不是说,字符串转换成数字就失败了,NaN也是Number类型的一个特殊值。

var a = Number(“abcd”);    //值是NaN,类型是Number
var b = parseInt(“abc”);    //值是NaN,类型是Number
var c = parseFloat(“abcd”);  //值是NaN,类型是Number

隐式转换:

可以通过减法、乘法、除法、取模等运算符将字符串转换成为数字。注意:不能使用加法运算符将字符串转换成为数字,如果使用加法运算符,数字会被转换成为字符串。

var str = “1234”;
var a = str – 0;
var b = str * 1;
var c = str / 1;
var c = str % 1;
console.log(typeof(a)+” , ” +typeof(b) + “ , ” + typeof(c));

 

除了通过算数运算符将字符串转换为数字以外,还可以通过给字符串添加正负号来将字符串转换成为数字。

var str = “1234”;
var a = +str;   //Number 1234
var b = -str;   //Number -1234
consol.log(“a = ” + a + “type = ”+typeof(a)+“ b = ” + b+”type=” + typeof(b));

 

如果一个字符串无法被转换成为数字,在隐式转换时,字符串数据类型也会被转换成为Nunber数字类型,只不过对应的值是NaN.

2.转换成字符串

显示转换

  1. 使用String对象生成一个字符串。

var b = String(1234);  //结果是”1234”,类型是String

  1. 调用变量或者直接量的toString()方法,可以将数据转换成为字符串。

var a = 1234;  //Number类型的数据
console.log(“a.toString() = ” + a.toString() + “type = ” + typeof(a.toString()));

注意:null和undefined不能够调用toString()方法。 

隐式转换

任意一个原始类型的数据和字符串相加,得到的结果都会是一个字符串。

var a = 1234 + “”;   //结果是”1234”,类型是String
var b = true + “123”;  //结果是 true123,类型是String
var c = null + “abcd”;  //结果是nullabcd,类型是String
var d = undefined + “abcd”;  //结果是undefinedabcd,类型是String

3.转换成布尔类型

显示转换

可以使用Boolean对象将数据转换为布尔类型。

console.log(Boolean(“123”));   //值为true,类型为布尔类型
console.log(Boolean(123));    //值为true,类型为布尔类型

console.log(Boolean(true));   //值为true,类型为布尔类型
console.log(Boolean(“false”));  //值为true,类型为布尔类型
console.log(Boolean(false));    //值为false,类型为布尔类型
console.log(Boolean(“”));     //值为false,类型为布尔类型
console.log(Boolean(0));    //值为false,类型为布尔类型
console.log(Boolean(null));   //值为false,类型为布尔类型
console.log(Boolean(undefined));   //值为false,类型为布尔类型
consol.log(Boolaen(NaN));      //值为false,类型为布尔类型

JS中,只有布尔类型的false、空字符串("")、0、null、undefined、NaN会被转换成为false,其它的数据都会被转换成为yes.

 

隐式转换

给数据添加一个逻辑非运算符就可以将数据转换成为一个Boolean类型。但是这样转换的话,值就会发生变化,例如 !"1234" 的值是false,这不符合我们的强制转换规则。所以,我们通常使用两个逻辑非运算符(即!!),来将数据转换成为布尔值,例如:!!"1234"的值为true,将字符串"1234"隐式转换成为了布尔值true.

 

js.day01