JavaScript 被称为是一种“松散类型”的语言。这是因为运行时允许对不同类型的操作数执行操作(通过强制):
var number = 6;
var bool = true;
var result = number + bool; //result is 7
来自一个主要是静态类型、强类型的背景,我很难推断这种方法的好处。当然,它可以产生一些非常简洁的语法,但在试图追踪错误时,它似乎也可能导致一场噩梦。那么,除了简洁之外,松散类型和隐式类型转换还有哪些好处呢?
JavaScript 被称为是一种“松散类型”的语言。这是因为运行时允许对不同类型的操作数执行操作(通过强制):
var number = 6;
var bool = true;
var result = number + bool; //result is 7
来自一个主要是静态类型、强类型的背景,我很难推断这种方法的好处。当然,它可以产生一些非常简洁的语法,但在试图追踪错误时,它似乎也可能导致一场噩梦。那么,除了简洁之外,松散类型和隐式类型转换还有哪些好处呢?
松散类型的语言有许多不同之处,可以作为优势:
interfaces
。只要一个对象有你需要的方法名,就调用那个方法。不使用接口可以简化编码并减少代码大小。indexOf
使用二分搜索替换替换方法。最终结果更小,恕我直言,代码更简洁。