博客列表 >js中的数据类型、分支与循环

js中的数据类型、分支与循环

风车
风车原创
2022年07月28日 12:27:52327浏览

数据类型

js中的数据类型分为两种

1.原始类型

原始类型中包括:
数值类型 number
字符串类型 string
布尔类型 boolean (在布尔类型中,只有两个值 false 和 ture)
默认类型 undefined
空对象 unll

原始类型的两大特点就是单值和动态

单值:一个变量只能有一个值
动态:数据类型的具体类型,由他的值决定
例子:
let a =(100);
在这里的a是数值类型,因为赋予他的值 是数值100.
let a =('100');
这里的a就变成了字符串类型,因为赋予他的值是字符串类型。

2.引用类型

引用类型中包含:

1.数组 array

1.数组中的成员可以使原始类型也可以是引用类型
2.数组的声明必须是常量
3.数组用方括号包围
const a = [0,1,2,3,4,5,6,7,.....]
这就是一个数组

数组的查看方法

1.常用的查看方法,会在控制台输出数组中数据的健名和值
console .log(a);
2.以表格方式输出 比第一种方法更加直观
console .table(a);
3.如果只想查看其中一个,则在a后用方括号表示出对应的键名(数组的键名从0开始)
console .log(a[2]);
4.加上length 可以查看数组的元素数量
console.log(a.length);

2.对象 function

对象也要用常量声明,用大括号表示
const b ={name:’手机’,unm:5 ,jiage:1599};

对象的调用方法

在对象的声明中name.unm就是键名,手机,5就是他的值,在调用其中一个时只需要用方括号,标识出需要查看的键名.
调用整个对象,这一步和查看数组一样
console.log(b)
调用其中一个
console.log(b['name']);
在对象中的键名符合js代码命名规范时,可以使用简化语法调用,去掉了单引号和方括号。
console .log(b.name);

3.函数 objece

可以将上方的对象进行封装,变成一个函数:

  1. b = {
  2. name:'手机',
  3. unm:5 ,
  4. jiage:1599,
  5. d:function(){
  6. return this.name+this.unm*this.jiage+'元';
  7. }
  8. }
  9. console .log(b.d());

上方代码中的this相当于当前函数的引用,在上方的代码中相当于函数名b,当函数名更改时,this的引用不受影响,减少了代码的修改难度

在js中 函数既是数据类型,也是对象,好处就是可以将一个函数作为参数传入另一个参数(回调)

分支

分支就是有条件的执行某段代码,分为单分支和多分支

单分支

给某段代码一个判断条件 当满足条件时执行代码,反之则不执行
分支中 首先定义一个变量 这个变量的值可以是用户输入
if 定义判断条件和执行代码
else 当上方条件不满足时执行的代码

  1. const b =20;
  2. if (b>=18){
  3. console.log('可以观看')
  4. }
  5. else
  6. {
  7. console.log('少儿不宜')
  8. };

代码解释:定义了一个常量 b ,然后下方进行判断if 当b大于等于18时,输出可以观看,else 反之则输出少儿不宜

双和多分支

双分支和多分支相当于是单分支的进阶,在双分支和多分支中有多个else,判断多个条件

  1. let d =31;
  2. // 第一级判断语句 18-30
  3. if(d>=18 && d<=30){
  4. console.log('允许观看');
  5. }
  6. // 二级判断语句 31-50
  7. else if(d>30 && d <=50){
  8. console.log('非常允许观看');
  9. }
  10. // 三级判断语句
  11. else{
  12. console.log('不允许观看');
  13. };

上方的代码在单分支的情况下加入了多级else if的判断,进行了多次判断,将输入的结果分成了不同的等级输出不一样的结果

简化语法(语法糖)
  1. switch 多分支的简化语法
  2. switch (条件){case 1: break case 2: break case 3: break default(这个是默认语句,前面条件1.2.3都不满足就输出默认)}
  3. 如果在case 之间没有 break 就会连续判断执行

这个是多分支的简化语法,相当于是在case 和break的中间包含一个判断条件,每个判断条件以case为开始,break为结束,如果只有case(开始)而没有break(结束)则case之后的条件视为一个同一个判断语句

最后的 default视为默认,在所有的条件不满足时,输出默认结果

  1. switch(true){
  2. case d>=18 && d<=30:
  3. console.log('允许观看')
  4. break;
  5. case d>30 && d <=50:
  6. console.log('非常允许观看')
  7. break;
  8. default:console.log('不允许观看');
  9. }

循环

循环遍历数组

首先是比如有下方一个数组
const a =[1,2,3,4,5,6,7,8,9,10];
我们通过循环,将整个数组遍历,并分别输出每一个值
let b = 0;
首先定义一个变量b,当做遍历索引,可以理解为储存每一次循环所的元素健名,0就是从第一个元素开始循环,如果为1 则从第二个元素开始循环,以此类推
let c = (a.length);
上面说过,使用length 可以获取数组中的元素数量,在这里用变量C 来储存数组中的元素数量,给本次循环一个循环的条件限制,每一个循环必须有一个循环条件,当不满足条件是结束循环,如果没有条件则会进入死循环(需要特别注意)

  1. while (b <c ){
  2. console.log(a[b]);
  3. b++;
  4. }

代码解释: while 循环 如果b<c (这里是循环条件,如果满足条件则进入循环) 输出 a数组中的健名为b的值,然后b++(这里相当于b=b+1,用来更新循环条件,每次循环之后+1 然后进入下一次循环,一直到b不小于c,然后循环结束)

在es6 中,有更加简单的语法
for-of
  1. for(let d of a){
  2. console.log(d)
  3. };

这个语法输出结果和上方while一样,但是简单很多,就是创建一个变量d,这个d用来接收遍历得到的值,of 之后跟上需要遍历的数组名称,然后输出d就行

for in
  1. const f={
  2. a:1,
  3. b:2,
  4. }
  5. for(let h in f){
  6. console.log(f[h]);
  7. }

for in 用来遍历对象,因为对象无法使用for of来遍历输出,但是因为数组也属于对象,所以for in也可以遍历数组

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议