资讯专栏INFORMATION COLUMN

盘点一下Javascript的那些隐式转换

godiscoder / 1043人阅读

摘要:产生于年设计者如果不是公司的决策,称绝不可能把作为设计的原型。作为设计者,他一点也不喜欢自己的这个作品与其说我爱,不如说我恨它。它是语言和语言一夜情的产物。十八世纪英国文学家约翰逊博士说得好它的优秀之处并非原创,它的原创之处并不优秀。

JavaScript 产生于1992年 设计者 Brendan Eich

如果不是公司的决策,Brendan Eich 称绝不可能把 Java 作为 Javascript 设计的原型。

作为设计者,他一点也不喜欢自己的这个作品:

"与其说我爱 Javascript,不如说我恨它。它是 C 语言和 Self 语言一夜情的产物。

十八世纪英国文学家约翰逊博士说得好:"它的优秀之处并非原创,它的原创之处并不优秀。" (the part that is good is not original, and the part that is original is not good.)"

JS 的数据类型: Number Boolean String Undefined Null Symbol(es6新定义的)和 ObjectArray 是特殊的 Object

typeof 返回的7中类型:number boolean string object undefined object function

"一夜情的产物": JS 类型相加会有什么意想不到的事情呢?

你可以尝试在浏览器的 Console 中输入

> (!(~+[])+{})[--[~+""][+[]]*[~+[]]+~~!+[]]+({}+[])[[~!+[]*~+[]]]
< sb

神奇的还在后边:

这些隐式转换, 给开发者多多少少都会带了一些不便.
尽管如此, js 依然非常优秀

原文来自:
https://www.hoehub.com/JavaSc...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/109176.html

相关文章

  • #yyds干货盘点# C#扩展方法

    摘要:定义用来扩展已定义类型中的方法成员在扩展方法之前,扩展一个方法需要使用继承来扩展现有类来扩展现有类型,并且值类型和密封类型是不能被继承的定义规则扩展方法的 定义用来扩展已定义类型中的方法成员在扩展方法之前,扩展一个方法需要使用继承来扩展现有类来扩展现有类型,并且值类型和密封类型(sealed)是不能被继承的定义规则扩展方法...

    马永翠 评论0 收藏0
  • #yyds干货盘点# 前端基础知识面试集锦3

    摘要:当解释器寻找引用值时,会首先检索其在栈中的地址,取得地址后从堆中获得实体如何实现继承构造继承原型继承实例继承拷贝继承原型机制或和方法去实现较简单,建议使用构造函数与原型混合方式。它是基于的一个子集。 JavaScript介绍js的基本数据类型。Undefined、Null、Boolean、Number、Stri...

    番茄西红柿 评论0 收藏2637
  • 前端每周清单半年盘点之 Node.js 篇

    摘要:前端每周清单专注前端领域内容,以对外文资料的搜集为主,帮助开发者了解一周前端热点分为新闻热点开发教程工程实践深度阅读开源项目巅峰人生等栏目。对该漏洞的综合评级为高危。目前,相关利用方式已经在互联网上公开,近期出现攻击尝试爆发的可能。 前端每周清单专注前端领域内容,以对外文资料的搜集为主,帮助开发者了解一周前端热点;分为新闻热点、开发教程、工程实践、深度阅读、开源项目、巅峰人生等栏目。欢...

    kid143 评论0 收藏0
  • #yyds干货盘点#dart系列之:在dart中使用数字和字符串

    摘要:今天给大家介绍一下中的数字和字符串的使用。数字中定义了三种类型的数字,分别是和。微软雅黑总结微软雅黑以上就是中数字和字符串的介绍。 简介要想熟悉一种语言,最简单的做法就是熟悉dart提供的各种核心库。dart为我们提供了包括dart:core,dart:async,dart:math,dart:convert,dart:h...

    番茄西红柿 评论0 收藏2637
  • 简单说 !![]==true 与 []==true 引发思考

    摘要:简单说中的与方法我们一句一句的看结果是逻辑非,会将操作数的布尔值求反,而就是类型转换,将对应的类型转换为型所以我们看一看,一次求反返回的就是,再求反返回的就是。原始值不可变更的值,包括布尔值数字和字符串。 说明 直接说出问题 !![] == true //结果是true [] == true //结果是false ![] == [] //结果是true 为什么会出现这种情...

    lbool 评论0 收藏0

发表评论

0条评论

godiscoder

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<