前端知识点——编程形式有哪些?
编程形式:面向过程和面向对象。
前端知识点——typeof的类型
typeof有六种数据类型:number,string,boolean,undefined,object,function。
数组 对象 null的typeof的结果都是object;
var num = [];
console.log(typeof (num)); //结果是object;
未声明的变量直接调用会报错,提示 is not defined。
如果是使用typeof(未声明的变量),则结果就是不会报错,但是结果会是undefined;
typeof(未声明的变量)结果就是undefined;
而且这个undefined是字符串类型的。
typeof(typeof(未声明的变量)),结果就是 string;
练习:
alert(typeof(a))//结果就是 string
alert(typeof(undefined))//结果就是 string
alert(typeof(NaN))//结果就是 numer
alert(typeof(null))//结果就是 object
alert(typeof(NaN))//结果就是number
var a = '123abc';alert(typeof(+a));//结果就是number
alert(typeof(!!a));//结果就是 boolean
alert(typeof(a + ''));//结果就是string
alert(1 == '1');//结果就是 true;
alert(NaN == NaN);//结果就是false;
alert(NaN == undefined);//结果就是false;
alert('11' + 11);//结果就是 1111;
alert(1 === '1');//结果就是false;
alert(parseInt('123abc'));//结果就是123;
var num = 123123.345789;alert(num.toFixed(3));//结果就是 123123。346;
前端知识点——类型转换
显示类型转换
Number(mix):
parseInt(string,radix);
parseFloat(string);
toString(radix);
String(mix);
Boolean();
null 转换成数字的结果是 0;
true 转换成数字的结果是 1;
false 转换成数字的结果是 0;
undefined 转换成数字的结果是 NaN;
parseInt();将括号内的内容转化成整型;
如果是非数的内容,都会转换成NaN;
例如: true false undefined null 都会转化成NaN;
parseInt(num,radix);
parseInt()有个独特的特点,能够从数字位开始看,直到非数字位截至。
所以parseInt(‘123abc’)的结果是123,且是number类型的123;
toString();将参数转化成字符串。
undefined 和 null 没有 toString() 方法
隐式类型转换
isNaN()
++ – + - (议员正负)
+
/ %
&& || !
< > <= >=
== !=
举例:
isNaN(NaN) true;
isNaN(‘123’) false;
isNaN(‘abc’) true;
isNaN(null) false
Number(null) = 0;
Number(undefined = NaN);
Number(‘a’) == NaN;
< > = 都会进行隐式类型转化
undefined进行Number(),计算的结果就是:NaN,NaN不等于任何东西,包括它本身。
undefined == null;
NaN != NaN;
前端知识点——parseInt 与 toString
parseInt();是将对应进制的数字转化成十进制;
toString(); 是将十进制的数字转化成对应的进制;
举例:
将2进制的数转化为16进制:
思路就是,先将2进制数转化为十进制数,通过 parseInt();
然后将十进制的数转化为16进制的数,通过toString();
var num = 10101010;
var test = parseInt(num,2);
console.log(test.toString(16));
parseInt(参数,进制基底);将对应基底的数转化成十进制
toString(目标进制);将十进制的参数转化成目标进制。