JavaScript数据类型转换的注意事项
网络编程 2021-07-04 20:00www.168986.cn编程入门
JavaScript是一种无类型语言,但JavaScript提供了一种灵活的自动类型转换的处理方式。基本规则是,如果某个类型的值用于需要其他类型的值的环境中,JavaScript就自动将这个值转换成所需要的类型。
1.字符串的不可变性
字符串定义了后,会一直占据内存空间,企鹅该处内存空间(栈)不可被重新赋值。
2.短路运算
||、&& 二元运算符,返回参与运算的操作数的原值(原数据类型和原数据),
运算结束后,返回导致运算结束的那个操作数。
3.三元运算符
code1?code2code3; 与if-else 不同
返回code2或code3的值----code2,code3 都可以空的{}代替;
不能写break,continue。
4.NaN
NaN !=NaN,
任何NaN参与的数学运算,其结果都是NaN
有NaN参与的条件表达式: 比较运算符 >/>=/</<=/==/=== 运算结果为false
!==/!= 运算结果为true
<script> var a; console.log(Boolean(NaN>=4)); console.log(Boolean(NaN<4)); console.log(Boolean(NaN=4)); console.log(Boolean(NaN==4)); console.log(Boolean(a=4)); console.log(NaN); console.log(a); if(NaN==NaN){ a = "NaN==NaN"; } var b; if(NaN!==NaN){ b = "NaN!=NaN"; } console.log(a+"\n"+b); </script>
5. JS 简单数据类型的转换---特殊情况演示
数据0,“”,false,null,undefined,"123abc"等
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> <style> div { line-height: 24px; margin: 0; padding: 0; } .one { width: 920px; position: absolute; left: 50%; : 50%; margin-left: -460px; margin-: -240px; } .all { float: left; border: 2px solid #000000; } .all- { font-size: 20px; font-weight: bold; } .all-bottom { line-height: 48px; font-size: 16px; } .details { float: left; border: 2px solid #000000; line-height: 24px; margin-left: -2px; } .details:hover { position: relative; border: 2px solid #ff0000; } .line-long { border-: 2px solid #000000; height: 0; width: 908px; } .line-short { border-: 2px dashed #000000; height: 0; width: 742px; margin-left: 166px; } </style> <script> document.write("<div class='one'>"); function f1() { return typeof res[res.length - 1]; } var arr = [0, "", false, null, undefined, NaN, 6.66, -9, "abc124", "-12.23abc23", "qwer", "s s"]; document.write("<div class='all'><div class='all-'>" + " 原数据及类型" + "</br>" + "转换方法 </div>" + "<div class='all-bottom'>" + "+" + "</br>" + "Number()" + "</br>" + "parseInt()" + "</br>" + "parseFloat()" + "</br>" + "\"\"" + "</br>" + ".toString" + "</br>" + "String()" + "</br>" + "!!" + "</br>" + "Boolean()" + "</br>" + "</div></div>") for (var i = 0; i < arr.length; i++) { switch (true) { case arr[i] === "": { var res = ['""']; break; } default : { var res = [arr[i] + ""]; } } res[res.length] = typeof arr[i]; res[res.length] = +arr[i]; res[res.length] = f1(); res[res.length] = Number(arr[i]); res[res.length] = f1(); res[res.length] = parseInt(arr[i]); res[res.length] = f1(); res[res.length] = parseFloat(arr[i]); res[res.length] = f1(); res[res.length] = arr[i] + ""; res[res.length] = f1(); if (i == 3 || i == 4) {//null 和undefined没有.toString()方法,导致报错 res[res.length] = "报错"; res[res.length] = "报错"; } else { res[res.length] = (arr[i]).toString(); res[res.length] = f1(); } res[res.length] = String(arr[i]); res[res.length] = f1(); res[res.length] = !!arr[i]; res[res.length] = f1(); res[res.length] = Boolean(arr[i]); res[res.length] = f1(); var resString = res.join("<br>"); document.write("<div class='details'>" + resString + "</br>" + "</div>"); } var j = 22; for (var i = 0; i < 9; i++) { document.write("<div class='line-short' style='margin-:" + j + "px'></div>") document.write("<div class='line-long' style='margin-:" + j + "px'></div>") } document.write("</div>"); </script> </head> <body> </body> </html>
以上就是本文给大家分享的全部内容了,希望大家能够喜欢
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程