JS基础3

assert(断言)

function assert(value) {
    if (value === true) {
        console.info('[测试通过]')
    }else {
        console.error('[测试不通过]')
    }
}

上面的代码 声明了一个函数assert , 它有一个可接受的值是value . if 这个值是true , 就执行console.info('[测试通过]') . 否则else 就执行console.error('[测试不通过]')

假设执行下面的代码

var a = '1\n2'   

想知道a的length , 但是又不确定 , 就可以用assert

assert(a.length === 3)

调用刚才的函数assert , 断言a的长度是3 , 结果是真的 , 控制台显示 [测试通过]

JS的内置assert是console.assert()

falsy值

  • 相当于false 的值就是 falsy值 下面就是JS中的falsy <a href='https://developer.mozilla.org/en-US/docs/Glossary/Falsy'>详情点击Falsy</a>
if (false)
if (null)
if (undefined)
if (0)
if (NaN)
if ('')
if ("")
if (document.all)

判断 真假 , !是取正 , !!就是取反 , 0是false , !就是取反 , !!就是取正 , 0本身就是falsy值所以!! 返回false


Q20170331171332.png

&& 和 ||

Q20170331171332.png
  • && 返回 Falsy
  • || 返回 Truthy
  • 返回的是第一个 Falsy 或 Truthy , 不管后面

再看这段代码

function assert(value , name) {
    name = name || ''
    if (value === true) {
        console.info('[测试通过]' + name)
    }else {
        console.error('[测试不通过]' + name)
      //throw new Error("失败")   ←←加到这里
    }
}
   

还可以用 throw new Error('assert失败') .它的作用是抛出错误

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,306评论 19 139
  • 第一部分 准入训练 第1章 进入忍者世界 js开发人员通常使用js库来实现通用和可重用的功能。这些库需要简单易用,...
    如201608阅读 5,152评论 1 2
  • https://nodejs.org/api/documentation.html 工具模块 Assert 测试 ...
    KeKeMars阅读 11,497评论 0 6
  • 生活中有个经验:越忙的时候越想追求自己的“梦想”,越想挤时间去读书,挤时间去学技能,等到闲下来的时候,却反而没了忙...
    Lion刘鑫阅读 2,849评论 1 3
  • 初遇西塘,留宿一夜,一梦千寻。 在西塘所有的游览还不如一场梦值得回味。也许是时间不对,选在国庆这个最不该出门旅游的...
    JetLu阅读 897评论 0 0