js的数据类型

268 阅读5分钟

1.js的引入方式

行内式 嵌入式 外联式


    <!-- 行内式 -->
    <button onclick="alert('helloworld')">点击</button>
    <!-- 嵌入式 -->
    <script>
        // 写js代码
        alert("第一个嵌入式")
    </script>
    <!-- 外联式 -->
    <script src="./test.js"></script>

2.js注释

    <script>
        // 单行注释 ctrl+/
        // 多行注释 /* */
    </script>

3.js输出方式

窗口输出alert()
控制台输出console.log()
prompt() 方法用于显示可提示用户进行输入的对话框
    <script>
        // 窗口输出
        alert("我的第一个窗口输出")
        // 控制台输出
        console.log("我的第一个控制台输出")
        // prompt
        prompt("请检查")
    </script>

4.变量

变量是用来装东西的,它是数据的容器,我们可以通过变量名获取数据,修改数据
1.变量的声明 var关键字 ,variable
2.变量的赋值
3.变量的初始化
例:var age=10;
   <script>
        // 变量
        // 变量是用来装东西的,它是数据的容器,我们可以通过变量名获取数据,修改数据
        // 1.变量的声明 var关键字 ,variable
        var age;
        // 2.变量的赋值
        age = 10;
        // 3.变量的初始化
        var age=10;
        console.log(age);
        var age,name;
        var age = 10, name="变量的初始化";

    </script>

5.变量命名规范

    // 变量命名使用规则的 不能随便命名
    // 组成:变量名是以字符 数字 下划线 美元符号组成
    // 不能以 数字开头
    // 不能是关键字和保留字
    // 严格区分大小写
    // 变量定义最好有意义

6.数字类型

    // 二进制0b开头
    // 八进制0o开头
    // 十六进制0x开头
    // 十进制
    //  1.数字的范围
    // var num4 =  9007199254740992;
    // isNaN() == 判断是否不是一个数字
<script>
        // 二进制0b开头
        // 八进制0o开头
        // 十六进制0x开头
        // 十进制
        var num1=10;
        console.log(num1);
        // 二级制
        var num2=0b11;      
        console.log(num2);
        // 十六进制
        var num3 = 0xa;
        console.log(num3);
</script>

7.字符串类型

在定义字符串时,单引号和双引号都是可以的!!
双引号可以包含单引号,单引号可以包含双引号
但是双引号不可以包含双引号,单引号不可以包含单引号(可用转义解决 \"   \')
<script>
    var name1="双引号";
    var name2='单引号';
</script>

字符串的转义字符 写到引号里

\n=换行 
\\=\  
\" 
\'
\t==tab 
\b==空格
<script>
    var string1="这是我\"第一个使用\"的转义字符"
    var string2="锄禾日当午,\n汗滴禾下土.\n换行"
    var string3="tab锄禾日当午\t锄禾日当午 "
</script>

字符串的长度

lenght
<script>
    var string4="字符串的长度";
    console.log(string4.length)
</script>

字符串拼接

"+"好拼接
<script>
    var string5 = "床前明月光";
    var string6 = "疑是地上霜";
    console.log(string5+string6)
    //加转义字符
    console.log(string5+"\n"+string6);
</script>

8.布尔类型

布尔类型分为true false
true 真 false 假
布尔类型与数字相加时 true为1 false为0
与字符串相加时 会变成字符串 进行字符串的相加
<script>
    var tru= true;
    console.log(true+1);//2
    var fals= false;
    console.log(fals+1);//1
    var str1 = tru + "前端课堂"
    var str2 = fals + "前端课堂"
    console.log(str1)//true前端课堂
    console.log(str2)//false前端课堂 此时 truefalse 都是字符串的形式
</script>

9.undefined 未被定义的意思,这是一种数据类型

<script>
    var name;
    console.log( "你好"+name);
</script>

10.null 空的意思 这也是一种数据类型

<script>
    var age = null; 
    console.log(age);
</script>

11.可以使用typeof(变量名)或type 变量名 来检测变量的数据类型

<script>
    var unde;
    console.log(typeof 10 );  //number      
    console.log(typeof "名字" );// string        
    console.log(typeof 名字 );//  undefined       
    console.log(typeof null );// object        
    console.log(typeof true );// boolean        
    console.log(typeof false);//boolean
    console.log(typeof unde);// undefined  
</script>

12.没有任何的变量值叫做自变量

    console.log(18)
    console.log("123123");
    console.log(true)
    console.log(undefined)

13. 将变量的类型转换为字符串类型的几种方法

1.隐式转换 只能将数字类型转换为字符类型
2.显示转换 变量.tostring()  String(变量名) 可将任意类型转换为string类型
<script>
    //1.隐式转换
    var num=12;
    console.log("隐式转换"+num);
    //2.显示转换 变量.tostring()  String(变量名)
    var fals=false;
    console.log(typeof(fals))
    console.log(num);
    console.log(num.toString())
    console.log(String(num))
    console.log(String(fals))
    console.log(String(null))
    console.log(String(undefined))
</script>

14 将变量的类型转换为数字类型的几种方法

1. - 可以隐式转换字符串 减乘除均可
2.parseInt( )-->转换的是字符串 而且转换出来的是一个整数
parseInt() 要看情况,如果以数字开头,就会返回开头的合法数字部分,如果以非数字开头,则返回NaN整数
3.parseFloat( ) 可以将字符串类型转数字
4. 利用Number函数Number( ) 布尔类型 string null 转换成数字 
区别:
1.Number()和parseInt()
当转换的内容包含**非数字**的时候,Number() 会返回NaN(Not a Number)
parseInt() 要看情况,如果以数字开头,就会返回开头的合法数字部分,如果以非数字开头,则返回NaN整数
2.parseInt( )和parseFloat( )
parseInt( ):转换出来的是一个整数
parseFloat( ):可以转换出来浮点数(通俗来说就是小数)
<script>
        // 将变量的类型转换为数字类型的几种方法
        // 1. - 可以隐式转换字符串 减乘除均可 /
        console.log('120' - 10);
        console.log('123' * 1);
        console.log('110'/10)


        // 2.parseInt(变量)-->转换的是字符串(只转换开头是数字的)
        //parseInt() 要看情况,如果以数字开头,就会返回开头的合法数字部分,如果以非数字开头,则返回NaN
        // 这个函数不仅可以转换字符串,而且转换出来的是一个整数
        console.log(parseInt("3.14"));
        console.log(parseInt("年龄 20"));//NAN
        console.log(parseInt(" 20年龄"));


        // 3.parseFloat(变量) // 可以将字符串类型转数字
        // float: 浮点 
        console.log(parseFloat("3.1415926"));
        console.log(parseFloat(" 年龄 3.1415926"));
        console.log(parseFloat("3.1415926 年龄"));


        // 4.利用Number函数Number(变量)
        // 布尔类型 string null 转换成数字 
        
        var str = "123"
        var name ="姓名 123"
        console.log(Number(name));
        console.log(Number(str));
        console.log(Number(true));
        console.log(Number(false));
        console.log(Number(null));// 0
        console.log(Number(undefined));//NAN
//Number()和parseInt()一样,都可以用来进行数字的转换
//区别在于,当转换的内容包含非数字的时候,Number() 会返回NaN(Not a Number)
// parseInt() 要看情况,如果以数字开头,就会返回开头的合法数字部分,如果以非数字开头,则返回NaN
    </script>

15.转换为布尔值

boolean(变量名)
在布尔类型转换的时候,如果不是0,'',NaN,null,undefined,其他转换出来的都是true
    console.log(Boolean(null));//false
    console.log(Boolean(0));//false
    console.log(Boolean(undefined));//false
    console.log(Boolean(""));//false
    console.log(Boolean(NAN));//false