JS基础知识点:基础数据类型,数据类型转换 您所在的位置:网站首页 网站的开头字母是什么意思 JS基础知识点:基础数据类型,数据类型转换

JS基础知识点:基础数据类型,数据类型转换

2023-05-14 19:16| 来源: 网络整理| 查看: 265

1.JS 的三大组成部分是什么 ?

JS的三大组成部分是:ECMAScript、DOM、BOM。

ECMAScript是JavaScript语言的标准规范,定义了该语言的语法、类型、操作符、语句、内置对象等方面的规则和规范。我们常说的ES6,指的是ES6(ECMAScript 2015)ECMAScript新一代标准,它在2015年发布。

DOM(Document Object Model)是一种基于对象的文档(HTML或XML)解析器,它将文档解析成一组相互关联的节点和对象,这些节点和对象可以被JavaScript用来对文档的内容和结构进行访问和操作。

BOM(Browser Object Model)是浏览器对象模型,是浏览器提供的一组API,用于操作浏览器窗口和页面间交互的对象,例如Window对象、History对象、Navigator对象等。

2.JS 中的变量命名规则和规范是什么 ? 变量名必须是以字母、下划线(_)、美元符号($)开头,后面可以跟字母、数字、下划线、美元符号。 变量名不能使用 JS 的关键字或保留字。(break case catch class const continue debugger default delete do else enum export extends false finally for function if import in instanceof new null return super switch this throw true try typeof var void while with yield) 变量名应该使用驼峰命名法,即第一个单词小写,其他单词首字母大写(例如:firstName)。 变量名要有意义,能够描述变量的含义。 3.JS 的基本数据类型有哪些 ?

JavaScript的基本数据类型有以下六种:

Number(数字) :包括整数、浮点数以及特殊的NaN、Infinity等。 String(字符串) :用于表示文本和字符序列。 Boolean(布尔) :用于表示真和假两种状态。 Null(空) :用于表示值为空。 Undefined(未定义) :表示一个未初始化的变量或未返回任何值的函数。 Symbol(符号) :用于表示唯一的标识符。

这些基本数据类型分别用于保存不同类型的信息。我们可以使用typeof关键字来检测变量的数据类型。值得注意的是,JavaScript中除了这些基本数据类型之外,其他的都是对象类型,包括函数、数组、正则表达式等等。

4.JS 中检测数据类型的方法是什么, 根据目前所学, 有多少种返回值分别代表什么意思 ? 方法一:typeof typeof 42 // "number" typeof "Hello" // "string" typeof true // "boolean" typeof undefined // "undefined" typeof null // "object" (注意这是 typeof 的一个 bug) typeof [] // "object" typeof {} // "object" typeof function() {} // "function" 方法二:Object.prototype.toString.call() function getType(t) { return Object.prototype.toString.call(t).slice(8, -1).toLowerCase(); } console.log(getType(42)); // "number" console.log(getType("Hello")); // "string" console.log(getType(true)); // "boolean" console.log(getType(undefined)); // "undefined" console.log(getType(null)); // "null" console.log(getType([])); // "array" console.log(getType({})); // "object" console.log(getType(function () {})); // "function" 其他 1.instanceof 运算符

instanceof 运算符可以检测一个实例是否属于某个类。例如:

const arr = [] console.log(arr instanceof Array) // true

需要注意的是,当检测 null 和 undefined 类型时,instanceof 运算符会报错。

2.constructor 属性

可以使用对象的 constructor 属性来判断其类型。例如:

const arr = [] console.log(arr.constructor === Array) // true

需要注意的是,如果对象的原型被更改,那么其 constructor 属性也会被更改。

3.isArray 方法

isArray() 方法用于检测一个值是否为数组类型。例如:

const arr = [] console.log(Array.isArray(arr)) // true

需要注意的是,该方法只能判断数组类型,不能判断其他类型。

5.JS 中转换数据类型中转数值有多少种方式 ?

使用 Number 函数:Number(value)。这个函数可以将字符串、布尔值、日期、数组等其他类型的值转换为数值。

使用 parseInt 函数:parseInt(string, radix)。这个函数将字符串转换为数值,但只保留整数部分。第二个参数 radix 可以指定要将字符串解析成十进制、八进制或十六进制数。

使用 parseFloat 函数:parseFloat(string)。这个函数与 parseInt 类似,但它可以处理浮点数,即保留小数部分。

还有一些隐式转换,值得注意

let num1 = "123"; let num2 = 456; let sum = num1 + num2; // 将 num2 自动转换成字符串类型,拼接得到字符串 "123456" console.log(sum); // "123456" 将布尔值转换成数值:在表达式中使用布尔值和数值做运算时,布尔值会被自动转换成数值类型。 let num1 = true; let num2 = 5; let sum = num1 + num2; // 布尔值 true 会被自动转换成数值 1 console.log(sum); // 6 将 null 和 undefined 转换成数值:在使用 Number() 函数将 null 和 undefined 转换成数值时,它们会被自动转换成数值 0。 let num1 = Number(null); // 0 let num2 = Number(undefined); // NaN

需要注意的是,隐式转换可能会导致意外的结果,因此在进行类型转换时应该给出明确的指示,以避免出现潜在的错误。在许多情况下,显式转换会更为安全和可靠。

6.JS 中转换数据类型中转布尔的时候有多少种数据转换成 false ? // false console.log(Boolean(false)); console.log(Boolean(null)); console.log(Boolean(undefined)); console.log(Boolean(0)); console.log(Boolean(NaN)); console.log(Boolean("")); // true console.log(Boolean(true)); console.log(Boolean(1)); console.log(Boolean("Hello")); console.log(Boolean({})); console.log(Boolean([])); 7.JS 中的三个逻辑运算符是什么, 分别表示什么意思 ?

JavaScript 中的三个逻辑运算符分别是:

逻辑与(&&): 当且仅当两个操作数都为 true 时,结果才为 true;否则结果为 false。 console.log(true && true); // true console.log(true && false); // false console.log(false && false); // false 逻辑或(||): 只要有一个操作数为 true 时,结果就是 true;只有当两个操作数都为 false 时,结果才为 false。 console.log(true || true); // true console.log(true || false); // true console.log(false || false); // false 逻辑非(!): 该运算符只有一个操作数。当操作数为 true 时,返回 false;当操作数为 false 时,返回 true。 console.log(!true); // false console.log(!false); // true

逻辑运算符通常用于条件语句或表达式中,帮助程序进行逻辑判断和控制程序流程。在实际应用中,可以利用逻辑运算符实现简洁而高效的代码实现逻辑控制。例如,在验证用户输入是否符合要求的过程中,可以使用逻辑运算符组合多个条件进行判断:只有当所有条件都满足时,才认为用户的输入是合法的。

8.JS 中前置 ++ 和 后置 ++ 的区别是什么 ?

在 JavaScript 中,前置 ++ 和后置 ++ 都是递增运算符。它们的主要区别在于它们的运行顺序和返回值。

前置 ++ 运算符将变量的值递增 1,然后返回递增后的值。它先执行递增操作,再返回递增后的值。例如:

let x = 10; let y = ++x; console.log(x); // 11 console.log(y); // 11

在这个例子中,先执行了 x 的递增操作,将变量 x 的值从 10 修改为 11。然后将递增后的值赋给了变量 y。

后置 ++ 运算符也会将变量的值递增 1,但是它是先返回原始值,然后再将变量的值递增 1。例如:

let a = 20; let b = a++; console.log(a); // 21 console.log(b); // 20

在这个例子中,先将变量 a 的值作为后置 ++ 运算符的返回值,赋给变量 b。然后再将变量 a 的值递增 1,将变量 a 的值从 20 修改为 21。

需要注意的是,在运行前置 ++ 或后置 ++ 运算符时,操作数应该是一个可修改的左值(left value),否则会导致语法错误。此外,如果 ++ 运算符的操作数是一个对象、数组或字符串,则会先将它们的值转换成原始值,然后再进行递增运算。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有