首页IT科技js变量有何特点是什么(JavaScript变量与基本数据类型)

js变量有何特点是什么(JavaScript变量与基本数据类型)

时间2025-05-04 08:40:33分类IT科技浏览3605
导读:目录...

目录

一            、声明变量

(1)let

(2)const

(3)var

二                、基本类型

(1)undefined和null

(2)string

(3)number和bigin

(4)boolean

(5)symbol

        JavaScript(JS)是一种具有函数优先特性的轻量级     、解释型或者说即时编译型的编程语言          。虽然作为 Web 页面中的脚本语言被人所熟知            ,但是它也被用到了很多非浏览器环境中                ,例如 Node.js         、Apache CouchDB                 、Adobe Acrobat 等                 。进一步说     ,JavaScript 是一种基于原型       、多范式      、单线程的动态语言         ,并且支持面向对象                  、命令式和声明式(如函数式编程)风格      。

一          、声明变量

(1)let

let 变量名 = 值;

let声明的变量可以被多次赋值                 ,例如:

let a = 100; // 初始值是 100 a = 200; // ok, 被重新赋值为 200

(2)const

const修饰的叫常量       ,只能赋值一次

const b = 300; // 初始值是 300 b = 400; // error, 不能再次赋值

const并不意味着它引用的内容不可修改      ,例如:

const c = [1,2,3]; c[2] = 4; // ok, 数组内容被修改成 [1,2,4] c = [5,6]; // error, 不能再次赋值

(3)var

var声明的变量可以被多次赋值                  ,例如:

var f = 100; f = 200;

二   、基本类型

(1)undefined和null

执行表达式或函数          ,没有返回结果   ,出现 undefined

访问数组不存在的元素                  ,访问对象不存在的属性             ,出现 undefined

定义变量,没有初始化               ,出现 undefined

例如:

console.log(1); // 函数没有返回值, 结果是 undefined let a = 10; // 表达式没有返回值, 结果是 undefined let b = [1,2,3]; console.log(b[10]); // 数组未定义元素是 undefined let c = {"name":"张三"}; console.log(c.age); // 对象未定义属性是 undefined let d; console.log(d); // 变量未初始化是 undefined

二者共同点

都没有属性                  、方法

二者合称 Nullish

二者区别

undefined 由 js 产生

null 由程序员提供

(2)string

js字符串有三种写法:

let a = "hello"; // 双引号 let b = "world"; // 单引号 let c = `hello`; // 反引号

HTML代码                ,用java和js中的表示对比:

java表示   ,比较繁琐:

String s2 = """ <a href="1.html">超链接</a>""";

js比较灵活:

let s1 = <a href="1.html">超链接</a>; let s2 = `<a href="1.html">超链接</a>`;

模板字符串(Template strings)

需求:拼接URL的请求参数            ,如:

/test?name=zhang&age=18

/test?name=li&age=20

传统方法拼接:

let name = ; // zhang li ... let age = ; // 18 20 ... let uri = "/test?name=" + name + "&age=" + age;

模板字符串方式:

let name = ; // zhang li ... let age = ; // 18 20 ... let uri = `/test?name=${name}&age=${age}`;

(3)number和bigin

number类型标识的是双精度浮点小数                ,例如:

10 / 3; // 结果 3.3333333333333335

既然是浮点小数     ,那么可以除零:

10 / 0; // 结果 Infinity 正无穷大 -10 / 0; // 结果 -Infinity 负无穷大

浮点小数都有运算精度问题         ,例如:

2.0 - 1.1; // 结果 0.8999999999999999

字符串转数字

parseInt("10"); // 结果是数字 10 parseInt("10.5"); // 结果是数字 10, 去除了小数部分 parseInt("10") / 3; // 结果仍视为 number 浮点数, 因此结果为 3.3333333333333335 parseInt("abc"); // 转换失败                 ,结果是特殊值 NaN (Not a Number)

要表示真正的整数       ,需要用bigint      ,数字的结尾用n表示它是一个bigint类型

10n / 3n; // 结果 3n, 按整数除法处理

(4)boolean

在js中                  ,并不是boolean才能用于条件判断          ,可以在if语句中使用【数字】             、【字符串】...作为判断

let b = 1; if(b) { // true console.log("进入了"); }

这时就有一个规则   ,当需要条件判断时                  ,这个值被当做true还是false             ,当做true的值归类为truthy,当做false的值归类为falsy

下面的值是falsy:

false

Nullish (null, undefined)

0, 0n, NaN

""  `` 即长度为零的字符串

剩余的值绝大部分都是truthy

有几个容易被当做falsy实际上是truthy的

"false", "0" 即字符串的 false 和 字符串的零

[] 空数组

{} 空对象

(5)symbol

使用较少               ,需要的可以在下面网址查阅JavaScript | MDN (mozilla.org)https://developer.mozilla.org/zh-CN/docs/Web/JavaScript

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
标致5008烧机油怎么解决(已解决ERROR: Could not find a version that satisfies the requirement opencv-python4.5.5.62A (from versi) chatpic文件夹啥也没有(通过ChatGPT实现的ChatPDF,简单的应用落地,让你的文档变成一个智能助手,通过对话的方式快速学习文档内容)