Ori*_*iol 7 javascript specifications language-lawyer
我正在阅读ECMAScript 5.1规范.它说:
该
slice方法有两个参数,start和end [...].如果start为负,则将其视为 length + start,其中length是数组的长度.如果end为负,则将其视为length + end,其中length是 数组的长度.
"消极"是什么意思?有道理,像数学一样,
num > 0,那么num它是积极的num < 0,那么num是否定的.但是,我们+0并-0?在数学中有一个单一的0,不是积极的,也不是消极的.我的猜测是,在ECMAScript中,
+0 (又称正零)是积极的.-0 (又称负零)是否定的.但是我试着用-0用slice,和浏览器把它当作非负.
然后,都是+0和-0非正非负,尽管他们的名字?
定义数字的正面或负面在哪里?我没有在ECMAScript规范中找到定义.该定义是否继承自IEEE 754?
术语“正数”和“负数”确实在 ECMAScript 规范中定义:
\n\n\n \n\n\n\nNumber 类型正好有 18437736874454810627 (即\n 2 64 \xe2\x88\x922 53 +3)值[...]
\n\nIEEE 标准的9007199254740990 (即 2 53 \xe2\x88\x922)不同\n \xe2\x80\x9cNot-a-Number\xe2\x80\x9d 值在 ECMAScript 中表示为单个特殊NaN价值 [...]
\n\n还有另外两个特殊值,称为正无穷大和负 无穷大[...]
\n\n其他 18437736874454810624 (即\n 2 64 \xe2\x88\x922 53)值称为有限数。\n 其中一半是正数,一半是负数;对于每个有限的正数值,都有一个具有相同大小的相应负值。
\n
所以,
\n\n+0和-0是这些有限数中的两个,因此每个数必须为正数或负数。+0是正数,要么-0是负数,要么相反。+0是正数,-0是负数。然而,根据以下内容,+0既不-0不能为负数:
\n \n\n\n\n数学函数abs(x)产生x的绝对值,如果x为负(小于零) ,则为\xe2\x88\x92x,否则为 x本身。
\n
事实上,在大多数情况下,规范似乎将变量为正或负的情况与变量为零的情况区分开来。例如,
\n\n\n \n\n\n\n如果x为正\n,则数学函数Sign(x)生成 1;如果 \n x为负,则数学函数 Sign(x)生成\xe2\x88\x921 。对于x为零的情况,本标准中不使用符号函数。
\n
| 归档时间: |
|
| 查看次数: |
213 次 |
| 最近记录: |