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

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

时间2025-06-20 16:19:09分类IT科技浏览3981
导读:目录...

目录

一            、声明变量

(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
中文分词语料库(借助 NlpBamboo 中文分词打造 PostgreSQL 的全文检索)