web前端-JavaScript标识符和数据类型/强制类型转换

简介: 字面量一些不可以改变的值,可以直接使用。但不建议使用。一般赋值给变量后引用。变量可以改变的值。变量可以用来保存字面量,而且变量的值是可以任意改变的,变量更加方便我们使用,所以在开发中都是通过变量去保存一个字面量,而很少直接使用字面量。

文章目录

字面量

变量

声明,赋值变量

标识符

JavaScript数据类型

强制类型转换

其他数据类型转字符串类型String

其他数据类型转数值类型Number

将其他数据类型转换为Boolean

字面量

一些不可以改变的值,可以直接使用。但不建议使用。一般赋值给变量后引用。


变量

可以改变的值。变量可以用来保存字面量,而且变量的值是可以任意改变的,变量更加方便我们使用,所以在开发中都是通过变量去保存一个字面量,而很少直接使用字面量。


实例 x = 5; x为变量,5为字面量


声明,赋值变量

在js中,用var关键字来声明变量。例:var x;

声明好变量之后便可对变量赋值。x = 5;

当然也可以同时声明并给变量赋值。var x = 5;

image.png

标识符

在JS中所有的可以由我们自主命名的都可以称为是标识符例如:变量名、函数名、属性名都属于标识符。


命名一个标识符时需要遵守如下的规则:


标识符中可以含有字母、数字、_、$

标识符不能以数字开头

标识符不能是ES中的关键字或保留字

标识符一般都采用驼峰命名法

-首字母小写,每个单词的开头字母大写,其余字母小写(helloWorld)

关键字和保留字

image.pngJavaScript数据类型

数据类型指的就是字面量的类型,在js中共有6种数据类型。


String 字符串

Number 数值

Boolean 布尔值

Null 空值

undefined 未定义

Symble(es6新增)

Object 对象

String,Number,Boolean,Null,Undefined,Symble属于基本数据类型,Object属于引用数据类型。


强制类型转换

将一个数据类型强制转换为其他数据类型。


其他数据类型转字符串类型String

方法一:调用被转换数据类型的toString()方法


该方法不会影响到原变量,它会将转换的结果返回

注意:null和undefined这两个值没有toString()方法,如果调用他们的方法就会报错。


image.png

unll和undefined没有toString的方法。但可以调用String函数将这两个数据类型转换为string

image.png

方法二:调用String()函数,并将被转换的数据作为参数传递给函数


使用String()函数做强制类型转换时

对于Number和Boolean实际上就是调用的toString()方法.

对于null和undefined,就不会调用toString(()方法它会将null直接转换为"null"将undefined直接转换为"undefined"


image.png

其他数据类型转数值类型Number

方法一:Number函数

  • 字符串转数字
  1. 如果是纯数字的字符串,则直接将其转换为数字
  2. 如果字符串中有非数字的内容,则转换为NaN
  3. 如果字符串是一个空串或者是一个全是空格的字符,则转换为0.

image.png

  • 布尔转数字
  1. true转成1
  2. false转成0

image.png

  • null和undefined转数字
  1. null转为0。
  2. undefined转为NaN。

image.png

方法二:parseInt(),parseFloat()函数

  • parseInt()将字符串中的有效的整数取出。

image.png

parseFloat()将字符串中的有效小数取出。

image.png

如果对非String使用parseInt()或parseFloat()它会先将其转换为String然后在操作

image.png

  • 可在parseInt()函数加入第二个参数,说明该数为多少进制数
  1. 在js中16进制数用0x开头表示
  2. 8进制数用0开头表示
  3. 2进制数用0b开头

image.png

加入第二个参数表示多少进制数。

image.png

将其他数据类型转换为Boolean

  • 使用Boolean()函数
  1. 数字转布尔
  • 除了0和NaN,其余的都是true

image.png

  1. 字符串转布尔
  • 除了空串,其余的都是true

image.png

  1. null和undefined都会转换为false

image.png


相关文章
|
6天前
|
前端开发 JavaScript 安全
前端性能调优:HTTP/2与HTTPS在Web加速中的应用
【10月更文挑战第27天】本文介绍了HTTP/2和HTTPS在前端性能调优中的应用。通过多路复用、服务器推送和头部压缩等特性,HTTP/2显著提升了Web性能。同时,HTTPS确保了数据传输的安全性。文章提供了示例代码,展示了如何使用Node.js创建一个HTTP/2服务器。
16 2
|
3天前
|
监控 前端开发 JavaScript
探索微前端架构:构建可扩展的现代Web应用
【10月更文挑战第29天】本文探讨了微前端架构的核心概念、优势及实施策略,通过将大型前端应用拆分为多个独立的微应用,提高开发效率、增强可维护性,并支持灵活的技术选型。实际案例包括Spotify和Zalando的成功应用。
|
3天前
|
设计模式 前端开发 JavaScript
揭秘!前端大牛们如何巧妙利用JavaScript,打造智能交互体验!
【10月更文挑战第30天】前端开发领域充满了无限可能与创意,JavaScript作为核心语言,凭借强大的功能和灵活性,成为打造智能交互体验的重要工具。本文介绍前端大牛如何利用JavaScript实现平滑滚动、复杂动画、实时数据更新和智能表单验证等效果,展示了JavaScript的多样性和强大能力。
15 4
|
1天前
|
机器学习/深度学习 自然语言处理 前端开发
前端神经网络入门:Brain.js - 详细介绍和对比不同的实现 - CNN、RNN、DNN、FFNN -无需准备环境打开浏览器即可测试运行-支持WebGPU加速
本文介绍了如何使用 JavaScript 神经网络库 **Brain.js** 实现不同类型的神经网络,包括前馈神经网络(FFNN)、深度神经网络(DNN)和循环神经网络(RNN)。通过简单的示例和代码,帮助前端开发者快速入门并理解神经网络的基本概念。文章还对比了各类神经网络的特点和适用场景,并简要介绍了卷积神经网络(CNN)的替代方案。
|
6天前
|
JavaScript 前端开发 开发者
前端框架对比:Vue.js与Angular的优劣分析与选择建议
【10月更文挑战第27天】在前端开发领域,Vue.js和Angular是两个备受瞩目的框架。本文对比了两者的优劣,Vue.js以轻量级和易上手著称,适合快速开发小型到中型项目;Angular则由Google支持,功能全面,适合大型企业级应用。选择时需考虑项目需求、团队熟悉度和长期维护等因素。
14 1
|
7天前
|
前端开发 JavaScript
Bootstrap Web 前端 UI 框架
Bootstrap 是快速开发 Web 应用程序的前端工具包。
21 3
|
7天前
|
前端开发 安全 应用服务中间件
前端性能调优:HTTP/2与HTTPS在Web加速中的应用
【10月更文挑战第26天】随着互联网的快速发展,前端性能调优成为开发者的重要任务。本文探讨了HTTP/2与HTTPS在前端性能优化中的应用,介绍了二进制分帧、多路复用和服务器推送等特性,并通过Nginx配置示例展示了如何启用HTTP/2和HTTPS,以提升Web应用的性能和安全性。
14 3
|
7天前
|
前端开发 JavaScript API
前端框架新探索:Svelte在构建高性能Web应用中的优势
【10月更文挑战第26天】近年来,前端技术飞速发展,Svelte凭借独特的编译时优化和简洁的API设计,成为构建高性能Web应用的优选。本文介绍Svelte的特点和优势,包括编译而非虚拟DOM、组件化开发、状态管理及响应式更新机制,并通过示例代码展示其使用方法。
21 2
|
7天前
|
JavaScript 前端开发 API
前端框架对比:Vue.js与Angular的优劣分析与选择建议
【10月更文挑战第26天】前端技术的飞速发展让开发者在构建用户界面时有了更多选择。本文对比了Vue.js和Angular两大框架,介绍了它们的特点和优劣,并给出了在实际项目中如何选择的建议。Vue.js轻量级、易上手,适合小型项目;Angular结构化、功能强大,适合大型项目。
11 0
|
5月前
|
前端开发 JavaScript 程序员
探索JavaScript宝库:打开基础知识与实用技能之门(数据类型与变量+ 条件与循环+函数与模块+DOM+异常+ES6)
探索JavaScript宝库:打开基础知识与实用技能之门(数据类型与变量+ 条件与循环+函数与模块+DOM+异常+ES6)
33 0