JavaScript基本语法类型及其转换

168 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第1天,点击查看活动详情

基本规则

所有的js代码都需要写在

并且在js中是严格区分大小写的, 即: hello和Hello是两个不同的东西

在js中有两种注释方法单行注释和多等注释

// 这里是单行注释

/*
* 这里是多行注释的第一行
* 这时是多行注释的第二行
*/

js中的标识符

在所有语言中的标识符, 就是指在编程中我们给变量, 常量, 对象, 属性, 函数, 参数等取的名字

标识符的命名规则

  1. 可以由字母, 数字, _, $等组成
  2. 必须由字母或 _ 或 $开头
  3. 在js中采用小驼峰命名法

js中的关键字

breakdointypeof
caseelseinstanceofvar
catchexportnewvoid
classextendsreturnwhile
constfinallysuperwith
continueforswitchyield
debuggerfunctionthisdefault
ifthrowdeleteimport
try

js中的保留字

enumimplementspackagepublic
interfaceprotectedstaticlet
privateawait

js中的数据类型

js中有6种数据类型分别为

字符串 - String

数值型 - Number

布尔型 - Boolean

null型 - Null

undefined - Undefined

对象 - Object

js中的字面量

字面量都是一个不可改变的值

字面量可以直接使用, 但一般都不会直接使用

字符串字面量: "a", "HelloWorld"

数值型字面量: 123, -123, 0, 1.23, -1.23

布尔型字面量: 只有两个true, false

null型字面量: 只有一个null

undefined型字面量: 只有一个undefined

数值型特殊的字面量 Infinity: 当数值超过了js中可以表示的范围, 即是Infinity, 如: Number.MAX_VALUE * Number.MAX_VALUE

数值型特殊的字面量 NaN: 在js中对数据进行计算, 但是没有结果返回时, 则返回NaN, 如: 'a' * 'b'

js中的变量

变量可以用来保存字面量, 而变量的值是可以改变的

变量可以更加方便我们去使用字面量

变量的声明与赋值

// 声明一个变量
var a;

// 对一个变量赋值一个数值型数据
a = 123;

// 变量的声明与赋值一起
var b = "abc"; // 字符串变量
var c = 123; // 数值型变量
var d = true; // 布尔型变量
var e = null; // null型变量
var f; // undefined型变量

typeof运算符

        console.log(typeof 'abc'); // 类型: string
        console.log(typeof 123); // 类型: number
        console.log(typeof true); // 类型: boolean
        console.log(typeof null); // 类型: object
        console.log(typeof undefined); // 类型: undefined

类型转换 - 其它类型转换为字符串

调用toString()方法转换为字符串

        var a = 123;
        var b = true;
        var c = null;
        var d = undefined;
        console.log(a.toString());
        console.log(b.toString());
        // console.log(c.toString()); // null没有toString方法
        // console.log(d.toString()); // undefined没有toString方法

使用String()函数转换为字符串

        var a = 123;
        var b = true;
        var c = null;
        var d = undefined;
        console.log(String(a)); // "123"
        console.log(String(b)); // "true"
        console.log(String(c)); // "null"
        console.log(String(d)); // "undefined"

类型转换 - 其它类型转换为数值型

使用Number()函数转换为数值型

        console.log(Number('')); // 0
        console.log(Number('123')); // 123
        console.log(Number('123px')); // NaN
        console.log(Number('123.456px')); // NaN
        console.log(Number('abc')); // NaN
        console.log(Number(true)); // 1
        console.log(Number(false)); // 0
        console.log(Number(null)); // 0
        console.log(Number(undefined)); // NaN

使用parseInt(), parseFloat()转换为数值型

这两个函数只能将字符串型的数据转换为数值值

这两个函数可以将字符串中从首字符开始的有效部分转换为数值

        console.log(parseInt('123px')); // 123
        console.log(parseInt('123.456px')); // 123
        console.log(parseInt('123px456px')); // 123
        console.log(parseInt('px:123')); // NaN

        console.log(parseFloat('123px')); // 123
        console.log(parseFloat('123.456px')); // 123.456
        console.log(parseFloat('123px456px')); // 123
        console.log(parseFloat('px:123')); // NaN

类型转换 - 其它类型转换为布尔型

        console.log(Boolean('')); // false
        console.log(Boolean('123')); // true
        console.log(Boolean('abc')); // true
        console.log(Boolean(123)); // true
        console.log(Boolean(-123)); // true
        console.log(Boolean(0)); // false
        console.log(Boolean(null)); // false
        console.log(Boolean(undefined)); // false