JavaScript变量与基本数据类型

简介: JavaScript变量与基本数据类型

  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


目录
相关文章
|
4月前
|
存储 JavaScript 对象存储
js检测数据类型有那些方法
js检测数据类型有那些方法
148 59
|
4月前
|
JavaScript 前端开发
JavaScript如何判断变量undefined
JavaScript如何判断变量undefined
|
4月前
|
JavaScript 前端开发
JavaScript基础知识-变量的声明提前
关于JavaScript变量声明提前特性的基础知识介绍。
52 0
JavaScript基础知识-变量的声明提前
|
26天前
|
存储 JavaScript 前端开发
JavaScript中的数据类型以及存储上的差别
通过本文的介绍,希望您能够深入理解JavaScript中的数据类型及其存储差别,并在实际编程中灵活运用这些知识,以提高代码的性能和稳定性。
51 3
|
2月前
|
存储 JavaScript 前端开发
js中的数据类型
JavaScript 中的数据类型包括五种基本类型(String、Number、Undefined、Boolean、Null)和三种引用类型(Object、Array、Function,以及ES6新增的Symbol)。基本类型直接存储值,引用类型存储的是指向实际数据的内存地址。了解它们的区别对于掌握 JavaScript 的变量赋值和函数传参至关重要。
29 1
|
2月前
|
前端开发 JavaScript
如何在 JavaScript 中访问和修改 CSS 变量?
【10月更文挑战第28天】通过以上方法,可以在JavaScript中灵活地访问和修改CSS变量,从而实现根据用户交互、页面状态等动态地改变页面样式,为网页添加更多的交互性和动态效果。在实际应用中,可以根据具体的需求和场景选择合适的方法来操作CSS变量。
|
2月前
|
前端开发 JavaScript 数据处理
CSS 变量的作用域和 JavaScript 变量的作用域有什么不同?
【10月更文挑战第28天】CSS变量和JavaScript变量虽然都有各自的作用域概念,但由于它们所属的语言和应用场景不同,其作用域的定义、范围、覆盖规则以及与其他语言特性的交互方式等方面都存在明显的差异。理解这些差异有助于更好地在Web开发中分别运用它们来实现预期的页面效果和功能逻辑。
|
2月前
|
前端开发 JavaScript UED
如何使用 JavaScript 动态修改 CSS 变量的值?
【10月更文挑战第28天】使用JavaScript动态修改CSS变量的值可以为页面带来更丰富的交互效果和动态样式变化,根据不同的应用场景和需求,可以选择合适的方法来实现CSS变量的动态修改,从而提高页面的灵活性和用户体验。
|
4月前
|
存储 前端开发 JavaScript
前端基础(二)_JavaScript变量、JavaScript标识符、JavaScript获取元素、JavaScript的鼠标事件
本文介绍了JavaScript变量的声明和使用、标识符的命名规则、如何获取和操作HTML元素,以及JavaScript的鼠标事件处理,通过示例代码展示了这些基础知识点在实际开发中的应用。
53 2
前端基础(二)_JavaScript变量、JavaScript标识符、JavaScript获取元素、JavaScript的鼠标事件
|
3月前
|
存储 JavaScript 前端开发
JavaScript 数据类型详解:基本类型与引用类型的区别及其检测方法
JavaScript 数据类型分为基本数据类型和引用数据类型。基本数据类型(如 string、number 等)具有不可变性,按值访问,存储在栈内存中。引用数据类型(如 Object、Array 等)存储在堆内存中,按引用访问,值是可变的。本文深入探讨了这两种数据类型的特性、存储方式、以及检测数据类型的两种常用方法——typeof 和 instanceof,帮助开发者更好地理解 JavaScript 内存模型和类型检测机制。
147 0
JavaScript 数据类型详解:基本类型与引用类型的区别及其检测方法