作家
登录

JavaScript 基础知识 被自己遗忘的

作者: 来源:www.28hudong.com 2013-03-30 02:15:46 阅读 我要评论

5%10=5 x="5"+"5"; x="5"+5 ; document.write(x);(結果都為﹕55) undefined是未初始化的变量的值﹐沒有引用值﹐屬于未定義 var anyway; anyway屬于已定義 有默認空值 一元咚惴?sdelete(刪除對開發者定義的對象和方法的引用﹐不能刪除原始的ECMAScript方法) void 运算符对任何值返回 undefined 没有返回值的函数真正返回的都是 undefined。 一元加法本质上对数字无任何影响。 一元加法计算字符串的方式与 parseInt() 相似 區別﹕只有一元加法才可以對八進制與十六進制形式的字符串(如﹕OxB﹑010)進行轉換 一元减法計算字符串﹐將字符串转换成近似的数字﹐再对该值求负 ECMAScript 整数有两种类型:有符号整数和无符号整数 0 表示正数,1 表示负数 正数是以真二进制形式存储的 负数也存储为二进制代码,采用二进制补码。 计算数字二进制补码﹕絕對值求反加一 在处理有符号整数时,开发者不能访问 31 位。 var iNum = -18; alert(iNum.toString(2)); 输出的是 "-10010"﹐非二进制补码﹐為了避免訪問31位 无符号整数的数值范围为 0 到 4294967295 把无符号整数转换成字符串后,只返回它们的有效位。 位运算 NOT(~)﹐位运算 AND﹐位运算 OR(|)﹐无符号右移运算(>>>) 左移运算(<<)注意:左移运算保留数字的符号位 位运算 XOR由符号(^)表示 只有一个数位存放的是 1 时,它才返回 1 所有整数字面量都默认存储为有符号整数。 只有 ECMAScript 的位运算符才能创建无符号整数。 var iNum1 = 25; //25 等于 00000000000000000000000000011001 var iNum2 = ~iNum1; //转换为 11111111111111111111111111100110 alert(iNum2); //输出 "-26" <!-- //-->与老的浏览器打交道 /* */多行注释 逻辑 NOT 运算符的行为如下: * 如果运算数是数字 0,返回 true * 如果运算数是 0 以外的任何数字,返回 false * 如果运算数是 null,返回 true * 如果运算数是 NaN,返回 true * 如果运算数是 undefined,发生错误 !!sBlue﹐第一个 NOT 运算符返回 Boolean 值。第二个 NOT 将对该 Boolean 值求负 逻辑 AND 运算并不一定返回 Boolean 值: * 如果一个运算数是对象,另一个是 Boolean 值,返回该对象。 * 如果两个运算数都是对象,返回第二个对象。 * 如果某个运算数是 null,返回 null。 * 如果某个运算数是 NaN,返回 NaN。 与逻辑 AND 运算符相似,如果某个运算数不是 Boolean 值,逻辑 OR 运算并不一定返回 Boolean 值: * 如果一个运算数是对象,另一个是 Boolean 值,返回该对象。 * 如果两个运算数都是对象,返回第一个对象。 * 如果某个运算数是 null,返回 null。 * 如果某个运算数是 NaN,返回 NaN。 乘法运算符(*) * 如果结果太大或太小,那么生成的结果是 Infinity 或 -Infinity。 * 如果某个运算数是 NaN,结果为 NaN。 * Infinity 乘以 0,结果为 NaN。 * Infinity 乘以 0 以外的任何数字,结果为 Infinity 或 -Infinity。 * Infinity 乘以 Infinity,结果为 Infinity。 除法运算符(/) * 如果某个运算数是 NaN,结果为 NaN。 * Infinity 被 Infinity 除,结果为 NaN。 * Infinity 被任何数字除,结果为 Infinity。 * 0 除一个任何非无穷大的数字,结果为 NaN。 * Infinity 被 0 以外的任何数字除,结果为 Infinity 或 -Infinity。 取模运算符(%) * 如果被除数是 Infinity,或除数是 0,结果为 NaN。 * Infinity 被 Infinity 除,结果为 NaN。 * 如果除数是无穷大的数,结果为被除数。 * 如果被除数为 0,结果为 0。 var bResult = "25" < "3"; 两个运算数都是字符串,所以比较的是它们的字符代码,"2" 的字符代码是 50,"3" 的字符代码是 51 var bResult = "25" < 3; 字符串 "25" 将被转换成数字 25,然后与数字 3 进行比较 任何包含 NaN 的关系运算符都要返回 false ("a"<15﹐a調用parseInt() 返回NaN) 等号和非等号用于处理原始值(執行前轉換成數字值),全等号和非全等号用于处理对象 执行类型转换的规则如下: * 如果一个运算数是 Boolean 值,在检查相等性之前,把它转换成数字值。false 转换成 0,true 为 1(true != 2) * 如果一个运算数是字符串,另一个是数字,在检查相等性之前,要尝试把字符串转换成数字。("5" == 5) * 如果一个运算数是对象,另一个是字符串,在检查相等性之前,要尝试把对象转换成字符串。 * 如果一个运算数是对象,另一个是数字,在检查相等性之前,要尝试把对象转换成数字。 遵守下列规则: * 值 null 和 undefined 相等。 * 在检查相等性时,不能把 null 和 undefined 转换成其他值。(undefined != 0,null != 0) * 如果某个运算数是 NaN,等号将返回 false,非等号将返回 true。(NaN !=NaN) * 如果两个运算数都是对象,那么比较的是它们的引用值。如果两个运算数指向同一对象,那么等号返回 true,否则两个运算数不等。 全等号和非全等号(不执行类型转换)

  推荐阅读

  JavaScript读取中文cookie时的乱码问题的解决方法

复制代码 代码如下:function Get_Cookie(name) { var start = document.cookie.indexOf(name+…=…); var len = start+name.length+1; if ((!start) && (name != document.cookie.substring(0,name.length))) retu>>>详细阅读


本文标题:JavaScript 基础知识 被自己遗忘的

地址:http://www.17bianji.com/kaifa2/JS/27947.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)