数据类型和转换

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>js面试题</title>
</head>
<body>
    
</body>
     <script type="text/javascript">
         //1 使用 typeof bar == object 来判断是不是一个对象有神马潜在的弊端.
         let obj = {};
         let arr = {};
         console.log(typeof obj === 'object'); // true
         console.log(typeof arr === 'object'); //true
         console.log(typeof null === 'object'); // true

         console.log(Object.prototype.toString.call(obj)); //[object object]
         console.log(Object.prototype.toString.call(arr)); //[object object]
         console.log(Object.prototype.toString.call(null)); //[object Null]

         //2 
         (function(){
             var a = b = 3;
         })();
         console.log(typeof(a));   // a is not defined
         console.log(b);  // 3                

         //3
         // 在字符串之前存在数字中的(+/-)时 会被转换成数字
         console.log(typeof '3'); //string
         console.log(typeof + '3'); // number

         //4
         // 同样 可以在数字前添加"",将数字转为字符串
         console.log(typeof 3);   // number
         console.log(typeof (' ' + 3)); // string

         //5
         //多个数字和数字字符串混合运算时,跟操作数的位置有关
         console.log(2 + 1 + '3');  //33
         console.log('3'  + 2 + 1);  // 321 

         //6
         // 对于运算结果不能转换成数字的,将返回NaN

         console.log('a'*'sd'); // NaN
         console.log('A' - 'B'); // NaN


         // 好用的sublime ,快捷键
         //1,  CRAL + M  光标移动止括号结束或开始的位置
         // 2, Ctrl+→ 向右单位性地移动光标,快速移动光标。
         // 3,Ctrl+J 合并选中的多行代码为一行。举个栗子:将多行格式的CSS属性合并为一行。
         // 4, Ctrl+Shift+D 复制光标所在整行,插入到下一行。
         // 5, Ctrl+K+K 从光标处开始删除代码至行尾。
         // 6 , Ctrl+Shift+K 删除整行。
    /*         Ctrl+K+U 转换大写。
            Ctrl+K+L 转换小写。
            Ctrl+Z 撤销。
            Ctrl+Y 恢复撤销。*/
        //Ctrl+F2 设置书签

        // Ctrl+K+B 开启/关闭侧边栏。大写的k b  b 

        // Alt+F3 选中文本按下快捷键,即可一次性选择全部的相同文本进行同时编辑。举个栗子:快速选中并更改所有相同的变量名、函数名等。

     </script> 
</html>

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>js面试题</title></head><body></body> <script type="text/javascript"> //1 使用 typeof bar == object 来判断是不是一个对象有神马潜在的弊端. let obj = {}; let arr = {}; console.log(typeof obj === 'object'); // true console.log(typeof arr === 'object'); //true console.log(typeof null === 'object'); // true
 console.log(Object.prototype.toString.call(obj)); //[object object] console.log(Object.prototype.toString.call(arr)); //[object object] console.log(Object.prototype.toString.call(null)); //[object Null]
 //2  (function(){ var a = b = 3; })(); console.log(typeof(a));   // a is not defined console.log(b);  // 3
 //3 // 在字符串之前存在数字中的(+/-)时 会被转换成数字 console.log(typeof '3'); //string console.log(typeof + '3'); // number
 //4 // 同样 可以在数字前添加"",将数字转为字符串 console.log(typeof 3);   // number console.log(typeof (' ' + 3)); // string
 //5 //多个数字和数字字符串混合运算时,跟操作数的位置有关 console.log(2 + 1 + '3');  //33 console.log('3'  + 2 + 1);  // 321 
 //6 // 对于运算结果不能转换成数字的,将返回NaN
 console.log('a'*'sd'); // NaN console.log('A' - 'B'); // NaN

 // 好用的sublime ,快捷键 //1,  CRAL + M  光标移动止括号结束或开始的位置 // 2, Ctrl+→ 向右单位性地移动光标,快速移动光标。 // 3,Ctrl+J 合并选中的多行代码为一行。举个栗子:将多行格式的CSS属性合并为一行。 // 4, Ctrl+Shift+D 复制光标所在整行,插入到下一行。 // 5, Ctrl+K+K 从光标处开始删除代码至行尾。 // 6 , Ctrl+Shift+K 删除整行。/* Ctrl+K+U 转换大写。Ctrl+K+L 转换小写。Ctrl+Z 撤销。Ctrl+Y 恢复撤销。*///Ctrl+F2 设置书签
// Ctrl+K+B 开启/关闭侧边栏。大写的k b  b 
// Alt+F3 选中文本按下快捷键,即可一次性选择全部的相同文本进行同时编辑。举个栗子:快速选中并更改所有相同的变量名、函数名等。
 </script> </html>

若有恒,何须三更睡五更起;最无益,莫过于一日曝十日寒
原文地址:https://www.cnblogs.com/21haoxingxiu/p/7279515.html