js基础知识点回顾1

此文章的目的是让本人更加认真的回顾一下基础知识

js的三种输出方式:
1,alert(“user”); 弹出一个弹窗显示
2, document.write(“user”); 在文档页面中显示
3, console.log(“user”); 在控制台console中显示

注意:alert的优先级比document.write高,所以即使后写alert,也会先执行alert的代码

   var username = "leson";
    alert(username);

var 是关键字 用来声明一个变量
username 叫变量名称
=不是比较 是赋值
代码的执行顺序为从上到下,单行时从左到右

字符串有三种声明方式如下:

    var username = "leson";
    alert(username);
    username = 'lili';
    alert(username);
    username = `lulu`;
    alert(username)

三种常见的数据类型如下:
1字符串
2:数字,直接写,不要加引号
3:布尔值,是非(true false)

    var username = "leson";
    alert(username);
    var userage = 18;
    alert(userage);
    var  isBoy = false;
    alert(isBoy);

数据类型的检测typeof

    var username = "leson";
    alert(typeof username);
    var userage = 18;
    alert(typeof userage);
    var  isBoy = false;
    alert(typeof isBoy);

特殊的+号
1,+左右两边只要存在字符串类型的变量,就进行字符串的拼接
2,+左右两边全部都是是number类型的变量时,才进行运算

var num1 = "10";
var num2 = 100;
var result = num1 + num2;
alert(result);//10100


var  username = "leson";
var userage  = 30;
var result  =  "我叫"+username+"今年"+userage+"岁";  //我叫lili今年20岁;
alert(result);

变量的命名规则
1,见名知意
2,字母数字_$组成,不能以数字开头,更不能是关键字
3,写法上驼峰命名法(匈牙利命名法),例getElementById

多变量声明的两种方式
1,var username="leson",userage=18;
2,var num1 = num2 = 100;

数据类型的转换
字符串转为数值型:

 var user="hahahahahha";
    document.write("user的数据类型为"+typeof user+"
"); var user1=Number( user); document.write("user1值为"+user1+",user1的数据类型为"+typeof user1+"
"); var user2=Number(""); document.write("user2值为"+user2+",user2的数据类型为"+typeof user2+"
");

结果为:

user的数据类型为string
user1值为NaN,user1的数据类型为number
user2值为0,user2的数据类型为number

字符串转为布尔类型:

    
    var user3=Boolean( user);
    document.write("user3值为"+user3+",user3的数据类型为"+typeof user3+"
"); var user4=Boolean(""); document.write("user4值为"+user4+",user4的数据类型为"+typeof user4+"
"); var user5=Boolean(" "); document.write("user5值为"+user5+",user5的数据类型为"+typeof user5+"
");

结果为:

user3值为true,user3的数据类型为boolean
user4值为false,user4的数据类型为boolean
user5值为true,user5的数据类型为boolean

综上:

1,字母转数字:结果为NaN 引号里面都是数字则转化为对应数值 "“和” “比较特殊的转成数字结果为0
2,字母转布尔:只要有内容结果就为true,没有就为false,”"为无内容, " "为有内容

数值类型转换成字符串类型:

   var num1=-111;
    document.write("num1的数据类型为"+typeof num1+"
"); var num2=String(num1); document.write("num2值为"+num2+",num2的数据类型为"+typeof num2+"
");

结果:

num1的数据类型为number
num2值为-111,num2的数据类型为string

数值类型转换成布尔类型:

    var num3=Boolean(num1);
    document.write("num3值为"+num3+",num3的数据类型为"+typeof num3+"
");

结果:

num3值为true,num3的数据类型为boolean

综上:

1,数值类型转换成字符串类型时直接将数字变成字符串类型即可
2,数值类型转换成布尔类型时=0为false,其他为true

布尔类型转换成字符串类型:

    var aa=false;
    document.write("aa的数据类型为"+typeof aa+"
"); var bb=String(aa); document.write("bb值为"+bb+",num2的数据类型为"+typeof bb+"
");

结果:

aa的数据类型为boolean
bb值为false,num2的数据类型为string

布尔类型转换成数值类型:

var cc=Number(aa);
document.write("cc值为"+cc+",num3的数据类型为"+typeof cc+"
");

结果:

cc值为0,num3的数据类型为number

综上:
1,布尔类型转换成字符串,直接将true或false转换成字符串
2,布尔类型转换成数值,false 为0 true 为1

特殊的符号转换:parseInt,paeseFloat

parseInt把里面的内容从左到右的进行转换 遇到非数字的时候终止 并且将结果保留整数部分(向下取整) 开头就为非数字 结果就为NaN
paeseFloat跟parseInt类似 只是结果保留了小数位,具体的保留几位小数请用toFixed(针对数字类型的)

var numa1="120.001px";
document.write("numa1为"+numa1+"
"); var numa2= parseInt(numa1); document.write("numa2为"+numa2+"
"); var numa3=parseFloat(numa1); document.write("numa3为"+numa3+"
"); var numb1="12a.001px"; document.write("numb1为"+numb1+"
"); var numb2= parseInt(numb1); document.write("numb2为"+numb2+"
"); var numb3=parseFloat(numb1); document.write("numb3为"+numb3+"
"); var numc1="a120.001px"; document.write("numc1为"+numc1+"
"); var numc2= parseInt(numc1); document.write("numc2为"+numc2+"
"); var numc3=parseFloat(numc1); document.write("numc3为"+numc3+"
");

结果:

numa1为120.001px
numa2为120
numa3为120.001
numb1为12a.001px
numb2为12
numb3为12
numc1为a120.001px
numc2为NaN
numc3为NaN

你可能感兴趣的:(前端面试题总结)