首页 > 编程语言 >Javascript数据类型及转换

Javascript数据类型及转换

时间:2024-10-23 16:17:11浏览次数:3  
标签:转换 log Javascript 数据类型 let var console 声明 变量

Javascript 代码引入方式

同HTML相似分为行内式、内嵌式、外链式

        1.行内式:行内式是将 JavaScript 代码作为 HTML 标签的属性值使用。

<a href="javascript:alert('Hello');">test</a>

代码杂乱容易混淆不推荐

        2.嵌入式:也称为内嵌式,使用<script>标签包裹 JavaScript 代码,直接编写到 HTML

文件中,通常将其放到<head>标签或<body>标签中。

<script>

 js代码块

</script>

        3.外链式:将 JavaScript 代码写在一个单独的文件中,一般使用“.js”作为

文件的扩展名,在 HTML 页面中使用<script>标签的 src 属性引入“.js”文件。

<script src=”test.js”></script>

输入和输出

输入

Prompt( )   浏览器弹出输入框,用户输入内容

alert( )      在浏览器中弹出提示框

输出

document.write( )  在网页中输出信息

console.log( )        在控制台输出信息

eg:

 prompt('请输入姓名')

    alert('输入成功')

 document.write('我是 document.write()语句!');

  var flag1=true;

  var flag2=false;

  console.log(flag1)

  console.log(flag2)

基本语法

变量

命名规则

  1. 不能以数字开头,且不能含有+、-等运算符,如 56name、56-name 就是非法变量名。严格区分大小写,如 it 与 IT 是两个不同的变量名。
  2. 不能使用 JavaScript 中的关键字命名。关键字是 JavaScript 语言中被事先定义好并赋予特殊含义的单词,如 var 就是一个关键字。
  3. 使用字母、数字、下画线和美元符号($)来命名,如 str、arr3、get_name、$a。
  4. 尽量要做到“见其名知其义”,如 price 表示价格,age 表示年龄等。
  5. 采用驼峰命名法,第 1 个单词首字母小写,后面的单词首字母大写,如 myBooks。

表达式

一、字面量表达式

  • 数值字面量:

例如 42、3.14。可以是整数或浮点数。

  • 字符串字面量:

用单引号或双引号括起来的字符序列,例如 'Hello, world!'、"JavaScript is great"。

  • 布尔字面量:

true 和 false,表示布尔值。

  • 对象字面量:

使用花括号 {} 定义,包含属性和方法的描述。例如 { name: 'John', age: 30 }。

  • 数组字面量:

用方括号 [] 括起来的一组值。例如 [1, 2, 3]。

二、标识符表达式

变量名、函数名等标识符也是基本表达式。例如,如果有一个变量 x,那么 x 就是一个标识符表达式。

、函数调用表达式

由函数名后跟括号组成,括号内可以包含参数列表。例如 Math.max(1, 2, 3) 调用了 Math 对象的 max 函数。

四、属性访问表达式

通过点运算符(.)或方括号运算符([])访问对象的属性。例如 obj.property 或 obj['property']。

五、一元表达式

        1/递增(++)和递减(--):

例如 x++ 表示先使用 x 的值,然后将 x 的值加 1;++x 则是先将 x 的值加 1,再使用新值。

        2.逻辑非(!)、按位非(~)、正号(+)、负号(-

!true 返回 false;~5 对数字 5 进行按位取反;+3 结果为 3;-4 结果为 -4。

变量的声明与赋值

  • 先声明后赋值

// 声明变量

var myName;

var age, sex;

// 为变量赋值

myName = '小明';

age = 18;

sex = '男';

  • 声明同时赋值

声明变量的同时为变量赋值的过程称为定义变量或初始化变量。

 var myName = '小明';

一条语句中声明的多个变量不可以同时赋同一个值

 var x,y,z=1; x,y 为 undefined, z 为 1。

  • 声明变量(var let const)

Var 声明变量为全局变量

全局都可以使用

var carName = "Volvo";

Var 声明局部变量

// 这里不能使用 carName 变量

function myFunction() {

 var carName = "Volvo";

 // 这里可以使用 carName 变量

}

// 这里不能使用 carName 变量

const 声明一个只读的常量,一旦声明,常量的值就不能改变。

  • 重新定义变量

使用 var 关键字重新声明变量可能会带来问题。

在块中重新声明变量也会重新声明块外的变量:

var x = 10;

// 这里输出 x 为 10

{

 var x = 2;

 // 这里输出 x 为 2

}

// 这里输出 x 为 2

let 关键字就可以解决这个问题,因为它只在 let 命令所在的代码块 {} 内有效。

var x = 10;

// 这里输出 x 为 10

{

 let x = 2;

 // 这里输出 x 为 2

}

// 这里输出 x 为 10

  • HTML 代码中使用全局变量

在 JavaScript 中, 全局作用域是针对 JavaScript 环境。

在 HTML 中, 全局作用域是针对 window 对象。

使用 var 关键字声明的全局作用域变量属于 window 对象:

var carName = "Volvo";

// 可以使用 window.carName 访问变量

使用 let 关键字声明的全局作用域变量不属于 window 对象:

let carName = "Volvo";

// 不能使用 window.carName 访问变量

重置变量

使用 var 关键字声明的变量在任何地方都可以修改:

var x = 2;

// x 为 2

var x = 3

// 现在 x 为 3

在相同的作用域或块级作用域中,不能使用 let 关键字来重置 var 关键字声明的变量:

var x = 2; // 合法

let x = 3; // 不合法

{

 var x = 4; // 合法

 let x = 5 // 不合法

}

在相同的作用域或块级作用域中,不能使用 let 关键字来重置 let 关键字声明的变量:

let x = 2; // 合法

let x = 3; // 不合法

{

 let x = 4; // 合法

 let x = 5; // 不合法

}

在相同的作用域或块级作用域中,不能使用 var 关键字来重置 let 关键字声明的变量:

let x = 2; // 合法

var x = 3; // 不合法

{

 let x = 4; // 合法

 var x = 5; // 不合法

}

let 关键字在不同作用域,或不同块级作用域中是可以重新声明赋值的:

let x = 2; // 合法

{

 let x = 3; // 合法

}

{

 let x = 4; // 合法

}

  • const 关键字

const 用于声明一个或多个常量,声明时必须进行初始化,且初始化后值不可再修改:

const PI = 3.141592653589793;

PI = 3.14; // 报错

PI = PI + 10; // 报错

const 定义常量与使用 let 定义的变量相似:

• 二者都是块级作用域

• 都不能和它所在作用域内的其他变量或函数拥有相同的名称

两者还有以下两点区别:

• const 声明的常量必须初始化,而 let 声明的变量不用

• const 定义常量的值不能通过再赋值修改,也不能再次声明。而 let 定义的变量值可

以修改。

数据类型

数据类型分为值类型和引用类型

值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、空(Null)、未定义

(Undefined)、Symbol。

引用数据类型(对象类型):对象(Object)、数组(Array)、函数(Function),还有两个特殊的

对象:正则(RegExp)和日期(Date)

        1.布尔型

var flag1=true;

var flag2=false;

JavaScript 中严格区分大小写,因此 true 和 false 值只有全部为小写时才表示布尔型。

        2.数字型

var oct = 032; // 八进制表示的 26

var dec = 26; // 十进制数表示的 26

var hex = 0x1a; // 十六进制数表示的 26

浮点数的两种表示方式

标准格式:数学中小数的写法。

科学记数法:将数字表示成一个数与 10 的 n 次幂相乘的形式,程序中使用 E(或 e) 后面跟一个数字的方式表示 10 的 n 次幂。

        3.字符串

是指计算机中用于表示文本的一系列字符,在 JavaScript 中使用单引号('')或双引号("")来标注字符串。

声明变量并赋值字符串的示例代码如下。

// 单引号字符串

var num = ''; // 表示空字符串

var slogan = '知识'; // 表示字符串'知识'

// 双引号字符串

var total = "";// 表示空字符串

var str = "知识就是力量";// 表示字符串“知识就是力量”

JavaScript 中常用的转义字符:

        4.空型

只有一个特殊的 null 值,表示变量未指向任何对象。

 声明变量并赋值为 null 的示例代码如下。

var a=null

console.log(a)

        5.未定义型

var b;

console.log(b)

        6.数字型中的特殊值

数字型有以下 3 个特殊值。

Infinity(无穷大)

-Infinity(无穷小)

NaN(Not a Number,非数字)

Eg

console.log(Number.MAX_VALUE * 2);

console.log(Number.MIN_VALUE * 2);

console.log('aaa' - 2);

        7.isNaN()

如果想要判断一个变量的值是否为数字,可以使用 isNaN()进行判断,返回结果为布尔值,true 表示变量的值不是数字,false 表示变量的值是数字,示例代码如下。

 console.log(isNaN(2));

 console.log(isNaN('aaa'));

        8.typeof( )

利用 typeof 操作符进行数据类型检测。 typeof 操作符以字符串形式返回检测结果。

检测数字类型

    let num = 10;

console.log(typeof num);

检测字符串类型:

    let str = "Hello";

console.log(typeof str);

检测布尔类型:

    let bool = true;

console.log(typeof bool);

检测未定义类型:

 let undef;

 console.log(typeof undef);

检测空值类型:

  let nullValue = null;

  console.log(typeof nullValue);

  检测对象类型:

  let arr = [1, 2, 3];

  console.log(typeof arr);

 检测数组类型:

  let obj = { name: "John" };

  console.log(typeof obj);

数据类型转换

在进行数据的比较、条件的判断时,经常需要将数据转换为布尔型数据,使用 Boolean()可

以将给定数据转换为布尔型数据,转换时,代表空或者否定的值(如空字符串、数字 0、

NaN、null 和 undefined)会被转换为 false,其余的值会被转换为 true 。

将数据转换为布尔型的示例代码如下。

console.log(Boolean('')); // 输出结果:false

console.log(Boolean(0)); // 输出结果:false

console.log(Boolean(NaN)); // 输出结果:false

console.log(Boolean(null)); // 输出结果:false

console.log(Boolean(undefined)); // 输出结果:false

console.log(Boolean(2)); // 输出结果:true

console.log(Boolean('2')); // 输出结果:true

JavaScript 中提供了以下 3 种方法可以实现将数据转换为数字型数据。

parseInt()  会自动识别进制

parseFloat() 会将数据转换为数字型中的浮点数

Number() 用于将数据转换为数字型数据

不同类型数据转数字型数据的结果:

不同类型数据转数字型的注意事项

  1. 在转换纯数字字符串时会忽略前导零。
  2. 利用 parseInt()、parseFloat()和 Number()进行数据类型转换时,若数据开头有正号

“+”或负号“-”,会被当成正数或者负数。

  1. 使用 parseInt()或 parseFloat()将字符串转换为数字型数据时,若字符串开头部分可

被识别为数字,则转换为相应的数字;若字符串末尾部分有非数字字符,则这些非

数字字符会被自动忽略;若字符串开头部分无法被识别为数字,则转换为 NaN。

parseInt()会直接省略数据的小数部分,返回数据的整数部分,使用 parseInt()将数据转换为

数字型的示例代码如下。

console.log(parselnt(‘123.1’));  输出结果:123

 

标签:转换,log,Javascript,数据类型,let,var,console,声明,变量
From: https://blog.csdn.net/2403_86264751/article/details/143187078

相关文章

  • Azure语音转文本服务:智能识别,中英文无缝转换
    作用:说话的人说的是英文,那么转换成的文本就是英文的,同理,说话的人说的是中文,那么转换成的文本也就是英文的。完整可跑通的代码很简单:importazure.cognitiveservices.speechasspeechsdkdefrecognize_from_microphone(filename):#Thisexamplerequiresenvironmentvar......
  • JavaScript 第27章:构建工具与自动化
    在现代JavaScript开发中,构建工具、代码转换工具、代码质量和代码格式化工具对于提高开发效率、保持代码整洁以及确保代码质量有着至关重要的作用。下面将分别介绍Webpack、Babel、ESLint和Prettier的配置与使用,并给出一些示例。1.构建工具:Webpack配置与使用Webpack是一个......
  • 2024.7:HOOPS Exchange SDK Crack-CAD 数据转换
    领先的CAD导入和导出库使用HOOPSExchangeSDK进行CAD数据转换,将30多种CAD文件格式导入您的应用程序,通过单一API即可快速准确地读取和写入2D和3DCAD文件格式,包括CATIA®、SOLIDWORKS®、Inventor™、Revit™、Creo®、NX™、SolidEdge®等。快速准确的C......
  • 鸿蒙Next之数据同步艺术之三:标准化数据类型解析-UTD详解
    本文旨在深入探讨华为鸿蒙HarmonyOSNext系统(截止目前API12)的技术细节,基于实际开发实践进行总结。主要作为技术分享与交流载体,难免错漏,欢迎各位同仁提出宝贵意见和问题,以便共同进步。本文为原创内容,任何形式的转载必须注明出处及原作者。本文将深入探讨华为鸿蒙HarmonyOSNext......
  • 鸿蒙Next之数据同步艺术之二:深入理解标准化数据类型 (UTD)
    本文旨在深入探讨华为鸿蒙HarmonyOSNext系统(截止目前API12)的技术细节,基于实际开发实践进行总结。主要作为技术分享与交流载体,难免错漏,欢迎各位同仁提出宝贵意见和问题,以便共同进步。本文为原创内容,任何形式的转载必须注明出处及原作者。UTD的设计原则层级结构:UTD采用层级......
  • 6个关于JavaScript的超级技巧
    对象属性简写问题:将变量分配给对象属性可能会重复。解决方案:使用属性简写来简化对象创建。动态属性名称问题:使用动态属性名称创建对象可能很冗长。解决方案:使用计算属性名称动态创建对象属性。数组方法:map()、、filter()和reduce()问题:对数组进行迭代可能会重复。解决方案......
  • DeviceNet主站转EtherCAT协议转换网关
    一,设备主要功能捷米特JM-ECT-DNTM网关实现EtherCAT网络与DeviceNet网络之间的数据通讯,可连接DeviceNet网络到EtherCAT网络。即将DeviceNet设备连接到EtherCAT网络。应用广泛:本产品应用于支持DeviceNet接口的电机、IO模块、机器人、仪表、等等。例如半导体设备中的IO模块、M......
  • EtherCAT转CC-Link协议转换网关
    一,设备主要功能捷米特JM-ECT-CCLK网关是自主研发的一款CC-Link从站功能的通讯网关。该产品主要功能是将各种CC-Link总线和EtherCAT网络连接起来。本网关连接到EtherCAT总线中做为从站使用,连接到CC-Link总线中做为从站使用。应用广泛:实现不同协议设备的集成:工业现场存在支持Et......
  • 变量与基本数据类型
    文章目录一、程序员必备修养--注释1-1.单行注释-->用#符号表示,在#后面的内容都是注释1-2.多行注释-->用一对三引号包裹着的内容(三引号=三对单/双引号)二、初识变量三、变量的基本使用3-1.声明变量:把右边的数据赋值给左边的变量名3-2.使用变量:直接输出变量名3-3.用i......
  • C++入门Day5 ~ 6:简单变量 & 数据类型 part 1 <8000字长文带你初步理解数据类型>
    这是我在学习中的一个小问题,希望对你也有所帮助:        问:数据类型和简单变量属于oop的基本概念吗?        答:不是!数据类型和简单变量本身并不属于面向对象编程(OOP)的基本概念,但它们是编程中的基础概念,面向对象编程会基于这些基础概念来构建更复杂的结构。......