-
\
-
/*
-
* 数据类型指的就是字面量的类型
-
* 在JS中一共有六种数据类型
-
* String 字符串
-
* Number 数值
-
* Boolean 布尔值
-
* Null 空值
-
* Undefined 未定义
-
* Object 对象
-
*
-
* 其中String Number Boolean Null Undefined属于基本数据类型
-
* 而Object属于引用数据类型
-
*/
-
-
/*
-
* String字符串
-
* - 在JS中字符串需要使用引号引起来
-
* - 使用双引号或单引号都可以,但是不要混着用
-
* - 引号不能嵌套,双引号不能放双引号,单引号不能放单引号
-
*/
-
var str = 'hello';
-
-
str = '我说:"今天天气真不错!"';
-
/*
-
在字符串中我们可以使用\作为转义字符,
-
当表示一些特殊符号时可以使用\进行转义
-
-
\" 表示 "
-
\' 表示 '
-
\n 表示换
-
\t 制表符 -- 感觉跟空格差不多
-
\\ 表示\
-
* */
-
str = "我说:\"今天\t天气真不错!\"";
-
-
// str = "\\\\\\";
-
-
(str);
————————————————————————————————————————
-
/*
-
* 在JS中所有的数值都是Number类型,
-
* 包括整数和浮点数(小数)
-
*
-
* JS中可以表示的数字的最大值
-
* Number.MAX_VALUE
-
* 1.7976931348623157e+308
-
*
-
* Number.MIN_VALUE 大于0的最小值
-
* 5e-324
-
*
-
* 如果使用Number表示的数字超过了最大值,则会返回一个
-
* Infinity 表示正无穷
-
* -Infinity 表示负无穷
-
* 使用typeof检查Infinity也会返回number
-
* NaN 是一个特殊的数字,表示Not A Number
-
* 使用typeof检查一个NaN也会返回number
-
*/
-
//数字123
-
//数字123
-
var a = 123;
-
//字符串123
-
var b = "123";
-
var result = typeof a;
-
var result2 = typeof b;
-
console.log(typeof result);
-
console.log(typeof result2);
'
运行
type 变量名 这个的返回值是 类型的字符串表现形式,说白了就是字符串
课程地址: 廖雪峰j2ee分布式架构师第一期大神课程来了
/youzhi/
这点要彻底弄懂!
而且返回的类型是字符串的小写形式,也就是string number boolean null undefined object!!
-
/*
-
* Boolean 布尔值
-
* 布尔值只有两个,主要用来做逻辑判断
-
* true
-
* - 表示真
-
* false
-
* - 表示假
-
*
-
* 使用typeof检查一个布尔值时,会返回boolean
-
*/
-
-
var bool = false;
-
-
(typeof bool);
-
(bool);
-
/*
-
* Null(空值)类型的值只有一个,就是null
-
* null这个值专门用来表示一个为空的对象
-
* 使用typeof检查一个null值时,会返回object
-
*
-
* Undefined(未定义)类型的值只有一个,就undefind
-
* 当声明一个变量,但是并不给变量赋值时,它的值就是undefined
-
* 使用typeof检查一个undefined时也会返回undefined
-
*/
-
var a = null;
-
-
var b = undefined;
-
-
(typeof b);
-
/*
-
* 将其他的数据类型转换为String
-
* 方式一:
-
* - 调用被转换数据类型的toString()方法
-
* - 该方法不会影响到原变量,它会将转换的结果返回
-
* - 但是注意:null和undefined这两个值没有toString()方法,
-
* 如果调用他们的方法,会报错
-
*
-
* 方式二:
-
* - 调用String()函数,并将被转换的数据作为参数传递给函数
-
* - 使用String()函数做强制类型转换时,
-
* 对于Number和Boolean实际上就是调用的toString()方法
-
* 但是对于null和undefined,就不会调用toString()方法
-
* 它会将 null 直接转换为 "null"
-
* 将 undefined 直接转换为 "undefined"
-
*
-
*/
-
-
var a = 123;
-
-
//调用a的toString()方法
-
//调用xxx的yyy()方法,就是()
-
a = ();
-
-
a = true;
-
a = ();
-
-
a = null;
-
//a = (); //报错
-
-
a = undefined;
-
//a = (); //报错
-
-
-
a = 123;
-
-
//调用String()函数,来将a转换为字符串
-
a = String(a);
-
-
a = null;
-
a = String(a);
-
-
a = undefined;
-
a = String(a);
-
-
(typeof a);
-
(a);
-
/*
-
* 将其他的数据类型转换为Number
-
* 转换方式一:
-
* 使用Number()函数
-
* - 字符串 --> 数字
-
* 1.如果是纯数字的字符串,则直接将其转换为数字
-
* 2.如果字符串中有非数字的内容,则转换为NaN
-
* 3.如果字符串是一个空串或者是一个全是空格的字符串,则转换为0
-
* - 布尔 --> 数字
-
* true 转成 1
-
* false 转成 0
-
*
-
* - null --> 数字 0
-
*
-
* - undefined --> 数字 NaN
-
*
-
* 转换方式二:
-
* - 这种方式专门用来对付字符串
-
* - parseInt() 把一个字符串转换为一个整数
-
* - parseFloat() 把一个字符串转换为一个浮点数
-
*/
-
-
var a = "123";
-
-
//调用Number()函数来将a转换为Number类型
-
a = Number(a);
-
-
a = false;
-
a = Number(a);
-
-
a = null;
-
a = Number(a);
-
-
a = undefined;
-
a = Number(a);
-
-
a = "123567a567px";
-
//调用parseInt()函数将a转换为Number
-
/*
-
* parseInt()可以将一个字符串中的有效的整数内容去出来,
-
* 然后转换为Number
-
*/
-
a = parseInt(a);
-
-
/*
-
* parseFloat()作用和parseInt()类似,不同的是它可以获得有效的小数
-
*/
-
a = "123.456.789px";
-
a = parseFloat(a);
-
-
/*
-
* 如果对非String使用parseInt()或parseFloat()
-
* 它会先将其转换为String然后在操作
-
*/
-
a = true;
-
a = parseInt(a);
-
-
a = 198.23;
-
a = parseInt(a);
-
-
(typeof a);
-
(a);
-
/*
-
* 运算符也叫操作符
-
* 通过运算符可以对一个或多个值进行运算,并获取运算结果
-
* 比如:typeof就是运算符,可以来获得一个值的类型
-
* 它会将该值的类型以字符串的形式返回
-
* number string boolean undefined object
-
*
-
* 算数运算符
-
* 当对非Number类型的值进行运算时,会将这些值转换为Number然后在运算
-
* 任何值和NaN做运算都得NaN
-
*
-
* +
-
* +可以对两个值进行加法运算,并将结果返回
-
* 如果对两个字符串进行加法运算,则会做拼串
-
* 会将两个字符串拼接为一个字符串,并返回
-
* 任何的值和字符串做加法运算,都会先转换为字符串,然后再和字符串做拼串的操作
-
* -
-
* - 可以对两个值进行减法运算,并将结果返回
-
*
-
* *
-
* * 可以对两个值进行乘法运算
-
* /
-
* / 可以对两个值进行除法运算
-
* %
-
* % 取模运算(取余数)
-
*/
-
var a = 123;
-
-
var result = typeof a;
-
-
//(typeof result);
-
-
result = a + 1;
-
-
result = 456 + 789;
-
-
result = true + 1;
-
-
result = true + false;
-
-
result = 2 + null;
-
-
result = 2 + NaN;
-
-
result = "你好" + "大帅哥";
-
-
var str = "锄禾日当午," +
-
"汗滴禾下土," +
-
"谁知盘中餐," +
-
"粒粒皆辛苦";
-
-
-
result = 123 + "1";
-
-
result = true + "hello";
-
-
//任何值和字符串相加都会转换为字符串,并做拼串操作
-
/*
-
* 我们可以利用这一特点,来将一个任意的数据类型转换为String
-
* 我们只需要为任意的数据类型 + 一个 "" 即可将其转换为String
-
* 这是一种隐式的类型转换,由浏览器自动完成,实际上它也是调用String()函数
-
*/
-
var c = 123;
-
-
c = c + "";
-
-
//c = null;
-
-
//c = c + "";
-
-
-
//(result);
-
//(typeof c);
-
//("c = "+c);
-
-
result = 1 + 2 + "3"; //33
-
-
result = "1" + 2 + 3; //123
-
-
result = 100 - 5;
-
-
result = 100 - true;
-
-
result = 100 - "1";
-
-
result = 2 * 2;
-
-
result = 2 * "8";
-
-
result = 2 * undefined;
-
-
result = 2 * null;
-
-
result = 4 / 2;
-
-
result = 3 / 2;
-
-
/*
-
* 任何值做- * /运算时都会自动转换为Number
-
* 我们可以利用这一特点做隐式的类型转换
-
* 可以通过为一个值 -0 *1 /1来将其转换为Number
-
* 原理和Number()函数一样,使用起来更加简单
-
*/
-
-
var d = "123";
-
-
//("result = "+result);
-
-
d = d - 0;
-
-
/*(typeof d);
-
(d);*/
-
-
result = 9 % 3;
-
result = 9 % 4;
-
result = 9 % 5;
-
-
("result = "+result);
-
-
</script>
-
-
var a = null;
-
var a= undefined;
-
(+a);
-
-
-
/**
-
* + a
-
*
-
* 若a 不是数字类型, 首先将 a 转换为数字类型,然后再去预算,所以可以用
-
* +a 隐士转换为数字类型!!
-
-
*/
-
/*
-
* 一元运算符,只需要一个操作数
-
* + 正号
-
* - 正号不会对数字产生任何影响
-
* - 负号
-
* - 负号可以对数字进行负号的取反
-
*
-
* - 对于非Number类型的值,
-
* 它会将先转换为Number,然后在运算
-
* 可以对一个其他的数据类型使用+,来将其转换为number
-
* 它的原理和Number()函数一样
-
*/