js 的隐式转换与显式转换指南攻略_类型基础入门

隐式转换1.undefined与null相等,但不恒等(===)2.一个是number一个是string时,会尝试将string转换为number3.隐式转换将boolean转换为number,0或14.隐式转换将Object转换成number或string,取决于另外一个对比量的类型5.对于0、空字符串的判断,建议使用 “===” 。6.“==”会对不同类

js 的隐式转换与显式转换指南攻略

隐式转换

1.undefined与null相等,但不恒等(===)2.一个是number一个是string时,会尝试将string转换为number3.隐式转换将boolean转换为number,0或14.隐式转换将Object转换成number或string,取决于另外一个对比量的类型5.对于0、空字符串的判断,建议使用 “===” 。6.“==”会对不同类型值进行类型转换再判断,“===”则不会。它会先判断两边的值类型,类型不匹配时直接为false。

undefined == null;  // true   
1 == true;  // true  
2 == true;  // false  
0 == false;  // true
0 == '';  // true   
NaN == NaN;  // false  NaN不等于任何值
[] == false;  // true  
[] == ![];  // true
'6' - '3'  // 3
1234 + 'abcd' // "1234abcd"

显示转换

显示转换一般指使用Number、String和Boolean三个构造函数,手动将各种类型的值,转换成数字、字符串或者布尔值。

Number:

Number('1234') // 1234
Number('1234abcd') // NaN
Number('') // 0
Number(true) // 1
Number(null) // 0
Number(undefined) // NaN

String:

String(1234)  // "1234"
String('abcd')  // "abcd"
String(true)  // "true"
String(undefined) // "undefined"
String(null)  // "null"

Boolean:

Boolean(0)  // false
Boolean(undefined)  // false
Boolean(null)  // false
Boolean(NaN)  // false
Boolean('')  // false

海计划公众号
(0)
上一篇 2020/03/29 01:46
下一篇 2020/03/29 01:46

您可能感兴趣的内容

  • ReactJS Components: 基础指南入门基础_Component菜鸟教程

    创建和管理React组件的各种方式,涌现的大量状态管理工具等等都是这些挑战的焦点。我们今天能做的就是在React(基于社区选择)中将最常用的做法引入桌面并讨论它们。 常规的 React Component按照常规,我的意思是常见的,你可能在大多数代码库和文章中看到过:var Hello = React.createClass({render: functi

    2020/04/05
  • Gulp4.0入门指南入门攻略_指南菜鸟教程

    安装gulp4.0分离了cli和核心部分,所以需要分别安装这两个包,另外对环境要求如下:node >= 8.11.1
    npm >= 5.6.0
    npx >= 9.7.1
    全局安装gulp-clinpm i -g gulp-cli
    本地安装gulpnpm i -D gulp
    查看版本号$ gulp -v# 输出CLI version: 2.2.0
    Local

    2020/03/20
  • Web秀菜鸟教程网_让你的技术真正秀起来

    Web秀菜鸟教程网 官方网址:http://www.javanx.cn/ 简介描述:让你的技术真正秀起来 Web秀用于记录开发遇到的点点滴滴,从前端、到后台、到服务器等等干货分享,…

    2020/03/11
  • turn.js小白攻略_一个轻量级的用来创建类似书本和杂志翻页效果

    turn.js小白攻略 官方网址:http://www.turnjs.com GitHub:https://github.com/blasten/turn.js 简介描述:一个轻量…

    2020/03/06
  • vue路由传参主要的3种方式小白入门_路由入门百科

    1、query方式(push时使用path来匹配)发起页面:this.$router.push({path: “/accept”, //接收页面路由query: {id: 222}
    });路由配置:routes: [{path: “/accept”
    }]接受参数页面:export default{data(){return{id:this.$router.q

    Web前端 2020/04/05
  • js断言测试使用指南_测试指南教程

    断言一词来自逻辑学,在逻辑学中,断言是断定一个特定前提为真的陈述,在软件测试中也是类似的含义。测试中断言语句的一般形式为assert 表达式,其中的表达式就是逻辑学中的陈述,表达式的值为真(true)的时候该断言才能通过,否则就断言失败。JS的生态系统中有很多断言库如:Node.js自带的assert模块,C语言风格的better-assert库BDD sh

    2020/03/29
  • Fetch — http请求的另一种姿势菜鸟教程下载_fetch入门基础教程

    传统Ajax是利用XMLHttpRequest(XHR)发送请求获取数据,不注重分离的原则。而Fetch API是基于Promise设计,专为解决XHR问题而出现。原文链接简介XMLHttpRequest是一个设计粗糙的API,其中配置和调用方式非常混乱。使用XHR发送一个json请求:var xhr = new XMLHttpRequest();
    xhr.

    2020/04/05
  • Web前端开发,必须规避的8个错误点!入门攻略_错误小白知识

    现在,有越来越多所谓的“教程”来帮助我们提高网站的易用性。我们收集了一些在Web开发中容易出错和被忽略的小问题,并且提供了参考的解决方案,以便于帮助Web开发者更好的完善网站。通过避免下面这些小错误,可以使得我们的网站变得更为友好。错误1:表单的label标签跟表单字段没有关联利用“for”属性允许用户单击label也可以选中表单中的内容。这可以扩大复选框和

    2020/03/29
  • 网站策划运营基础指南一图看懂网站策划、网站运营、网站整合营销流_运营小白基础

    在年前,野马在网上看到一看图,是来源于互联网分析沙龙,网站运营流程体系图,这张图从网站策划到网站运营推广,再到网站整合营销的整个过程,做的非常的全面,大神真赞!今有网友问起网站运营这块就分享出来,希望有所帮助!一、首先是网站策划网站策划是网站平台建设的第一个环节,也是网站成败的重要关键,网站策划说白了就是网站解决方案,能给客户带来什么价值,以及通过何种方法去

    2020/04/05
  • 通过编写简易版本的虚拟DOM,来理解虚拟DOM 的原理攻略教程_dom使用帮助

    要构建自己的虚拟DOM,需要知道两件事。你甚至不需要深入 React 的源代码或者深入任何其他虚拟DOM实现的源代码,因为它们是如此庞大和复杂——但实际上,虚拟DOM的主要部分只需不到50行代码。有两个概念:Virtual DOM 是真实DOM的映射当虚拟 DOM 树中的某些节点改变时,会得到一个新的虚拟树。算法对这两棵树(新树和旧树)进行比较,找出差异,然

    2020/03/23
  • 使用webpack4搭建一个基于Vue的组件库基础指南_库基础知识

    组内负责的几个项目都有一些一样的公共组件,所以就着手搭建了个公共组件开发脚手架,第一次开发 library,所以是参考着 iview 的配置来搭建的。记录如何使用webpack4搭建一个library的脚手架前言使用 webpack4,需要安装 webpack 和 webpack-cliyarn add webpack webpack-cli -D
    然后就是

    2020/03/24
  • 如何将React Native 项目运行在 Web 浏览器上面基础入门_跨平台基础知识

    React Native 的出现,让前端工程师拥有了使用 JavaScript 编写原生 APP 的能力。相比之前的 Web app 来说,对于性能和用户体验提升了非常多。但是 React Native 的代码只兼容两个平台(iOS 和 Android),并没有兼容 Web 端访问。这里是因为 Facebook 开发人员认为 Web 端天生兼容性就巨麻烦,而

    2020/04/05
  • js对象的封装、继承和多态小白攻略_对象基础指南

    面向对象三大特性就是封装继承和多态,简单理解,对于猫这种动物,它本身就是一个封装好的类,你只需要供它吃喝(输入),它就能表现猫的行为(输出),同时它继承了动物所具有的习性(吃东西等~),而不同的猫因为所处环境或者习性的不同,可能会有不同的表现和行为,这就是多态。封装把客观事物封装成抽象的类,隐藏属性和方法的实现细节,仅对外公开接口。① 在ES6之前,没有cl

    2020/03/26
  • vuex小白常识_一个专门为 Vue.js 应用所设计的集中式状态管理架构

    vuex小白常识 官方网址:http://vuex.vuejs.org/ GitHub:https://github.com/vuejs/vuex 简介描述:一个专门为 Vue.j…

    2020/03/06
  • dancer.js基础入门_一个高级的音频API

    dancer.js基础入门 官方网址:http://jsantell.github.com/dancer.js GitHub:https://github.com/jsantell…

    2020/03/06
  • 微信小程序之下载(下载文件tempFilePath后缀unknown)基础知识_下载使用教程

    最近有用到微信小程序的downloadFile接口,但是在真机上出现了文件后缀为unknown,导致文件保存失败,这里记录下1.下载文件使用downloadFile下载API/* 直接这样写的话,会出现下载文件后缀名为unknown的情况 */
    wx.downloadFile({url: ”,success (res) {console.log(res.f

    2020/03/26