js同步和异步以及简单习题

本文详细解析了JavaScript中的同步与异步执行机制的区别,包括async与defer属性的应用场景,并介绍了变量的基本概念及特殊处理方式。

js里的同步和异步

  • 同步:代码有顺序的执行
  • 异步:同时在执行,需要一对属性和值
    • <script src="main.js" async="async"></script>

    • async的属性值可以省略,因为属性和值都是同一个。浏览器在执行此代码时看到async时先下载,先执行下面的代码,下载完成后立即执行。
    • <script src="main.js" defer="defer"></script>

    • defer 的属性值可以省略,因为属性和值都是一个。异步操作。
    • async和defer都是异步,async在执行js代码的同时下载外部的js文件,如果下载完了就立即执行。defer在所有的js代码全部执行完后再执行。

变量

  • 交换两个变量的值有三种方式:设置第三方变量;进行运算(和);进行位运算交换(shift+6,即6上方的符号)。
  • 当一个变量的值是null,表示该变量不是普通的变量,是一个对象,对象为空,类型为object
  • 在程序中看到0x就是十六进制,0就是八进制的。
  • 特殊情况:减号连接一个字符串和一个数值的时候会把字符串类型隐士转换成数值类型,而加号的作用是连接。
  • String方法适用于null和undefined
  • 如果一个变量的值是undefined或者为null一般是无法进行计算的。
  • 什么情况值是undefined:当一个变量声明了,没有赋值(初始化);当一个函数没有明确返回值的时候。
  • 当一个变量的值是undefined或者是null,此时这个变量不能参与运算。
if((typeof num)=='undefined'||num==null){}//undefined使用了单引号但是null没有使用单引号是因为使用typeof获取不到类型为null的元素,获取到的是object,所以只判断他的值。
  • 无穷大infinity,无穷小-infinity

看完了这些,(包括之前博客中有讲解的流程控制等,如果还不明白,请先看一下之前的博客哈)相信你对下面的习题也差不多可以做出来了,多思考,这些难不倒你的,加油!

那些反复练习的习题

  • 用户输入一个数字,判断是几位数?
  • 将数组中的名字以字符串的形式输出并使用竖线隔开。
  • 打印九九乘法表。
  • 输出菱形。
  • 判断一个数字是不是质数(求1-100之间所有的质数并输出)。
  • 反转数组,冒泡排序。
  • 数组去重。
  • 菲波那切数列。

提示:记得先复习一下流程控制哦!

转载于:https://my.oschina.net/yxmBetter/blog/829252

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值