02-变量与数据类型介绍--highgh的博客--JavaScript学习笔记

本文介绍了JavaScript中的标识符规则和变量的定义与命名规范,包括变量的多种定义方式。详细讲解了各种数据类型,如String、Number(整数、浮点数、Infinity、NaN)、Boolean、Undefined、Null和Object,以及数组、对象和内置对象的概念。还提到了变量的赋值和取值操作,以及typeof操作符的使用。
摘要由CSDN通过智能技术生成

JavaScript的标识符

1、什么是标识符?

变量、函数、属性的名字,或者函数的参数。

2、标识符的命名规则:

(1)、由字母、数字、下划线(_ )或美元符号( $ )组成

(2)、不能以数字开头

(3)、不能使用关键字、保留字等作为标识符

什么是变量?

ECMAScript的变量是松散类型

松散类型:可以用来保存任何类型的数据

换句话说,每个变量仅仅是一个用于保存值的占位符而已

变量命名规范

1.只允许使用 数字、字母、下划线、$ (不能使用数字开头)

2.严格区分大小写

3.不要重复定义/声明

4.关键词/保留词 不能用来做变量名

5.语义化驼峰命名

  1. 关键字 => js已经赋予特殊功能的单词
  2. 保留字 => js预订可能未来要使用的字

关键字:

break、else、new、var、 case、 finally 、 return、 void 、 catch 、for 、switch 、 while 、 continue、 function 、this 、 with 、default 、 if 、 throw 、 delete 、 in 、 try 、do 、 instranceof、 typeof

保留字:

abstract 、 enum 、int 、 short 、 boolean 、export 、interface、 static、 byte 、extends 、 long 、 super 、 char 、 final 、native 、synchronized 、 class 、float 、 package 、throws 、 const 、goto 、private 、transient 、 debugger 、 implements 、protected 、 volatile 、 double 、import 、public

定义变量的多个写法

使用 let 关键字定义一个变量

同一个变量不能多次定义

1.定义时赋值

赋值运算符, 变量的赋值用等号,=就是赋值符号。
在JS中等号没有其他的含义,=就表示赋值。

2.先定义后赋值
let x;
let y;
x = 10;
y = 20;
3.同时定义多个变量,用逗号隔开
let x,y;
x = 10;
y = 20;

//等价于 
let x = 10,
 	y = 20;

注意

如果变量赋值的时候,忘了写 let 命令,这条语句也是有效的。

let a = 1;

// 基本等同

a = 1;
//省略声明的变量是全局变量  不推荐省略let操作符来定义全局变量 建议总是使用let命令声明变量

如果一个变量没有声明就直接使用,JavaScript 会报错,变量未定义。

console.log(x);
// ReferenceError: x is not defined
4.定义常量
const x = 3.1315927;

//const 定义的变量称之为常量,是不允许重新赋值的.

注意 :

= 左边为一个变量,不能为表达式

let a = 10;
let b = 5; 
let c;
a - c = b   // 报错 ,赋值运算符左边不能为表达式
console.log(c);    

语句

JavaScript 程序的执行单位为行,一行一行地执行

语句是为了完成某种任务而进行的操作。

let a = 1 + 3;
//这条语句先用let命令,声明了变量a,然后将1 + 3的运算结果赋值给变量a
//1 + 3叫做表达式(expression),指一个为了得到返回值的计算式。

语句和表达式的区别

语句主要为了进行某种操作,一般情况下不需要返回值

表达式则是为了得到返回值,一定会返回一个值。 JavaScript 语言中预期为值的地方,都可以使用表达式。

JavaScript 是一种动态类型语言,也就是说,变量的类型没有限制,变量可以随时更改类型。

let a = 100;
a = "小甘子";
//第二次赋值的时候  ,因为变量a已经存在,不需要使用var命令

区分变量还是直接量

变量的时候,不能加引号。如果变量加上引号,就变成字符串的直接量了。

var a = 200;
console.log("a");     //a

var a = "大家好";
console.log(a);	//大家好

//引号是“字符串”的定界符,所以在双引号里面的a已经失去了变量的意思,就是一个字符串a。

数据类型

基本类型:

number 数字

string 字符串

boolean 布尔值

undefined 未定义

null 空指针

引用数据类型:

object 对象

ES6新增

symbol 唯一值

bigint 大整数

String

基本介绍

字符串是由0或是多个字符组成的字符序列,即字符串;

字符串可以用双引号(“”)或是单引号(‘’)或模板字符串(``)包裹起来,

 let b = "小干";//双引号
 let bb = '小宝';//单引号
 let bbb = `雪糕`;//模板字符串

如果一个数字,用引号引起来,那么就是字符串了。

console.log("666");

不加引号是错误的

//  不能不加引号,这是错误的:
console.log(小宝牛逼);

注意引号必须是同种引号,混用错误

console.log('嘻嘻");

正常情况

引号内部可以有不同种的引号,比如双引号里面可以有单引号:

// 双引号中用单引号
console.log("你看过'花儿'吗");
// 单引号中用双引号
console.log('你看过"花儿"吗');

如果要在双引号里使用双引号或者单引号内使用单引号

let b1 = "小\"\"甘";
//使用\进行转义  将有意义的符号转为没有意义的字符

可以将没有意义的字面n转为有意义的换行

//转义字符
alert("我\n啊\n怎么可以\n那么可爱呢,真是伤脑筋哦");

boolean

布尔(逻辑)只能有两个值:true 或 false。

let c = true; // true
let c = false //false
        
        
let d = 20 > 30;
console.log(d);//false

如果 JavaScript 预期某个位置应该是布尔值,会将该位置上现有的值自动转为布尔值

除了下面六个值被转为false,其他值都视为true

undefined
null
false
0
NaN
""''``(空字符串)

布尔值往往用于程序流程的控制

if ('') {
   
  console.log('true');
}
//if命令后面的判断条件,预期应该是一个布尔值
// JavaScript 自动将空字符串,转为布尔值false
//导致程序不会进入代码块,所以没有任何输出。

Number

let a = 10;

let aa = 10 + 20;	//运算整体赋值给aa变量
整数

JavaScript中,数字的整数字面量可以有三种进制:

10进制: 普通的数字就是十进制

8进制:如果以0、0o、0O开头数字字面量是八进制,八进制只包括数字0~7

16进制:如果以0x,0X开头数字字面量是十六进制。十六进制整数可以包含(0-9)和字母 a-f 或 A-F

八进制
//以0开头,是八进制;显示的时候会以十进制显示
console.log(017);  //15  //7*8的零次方  +  1*8的一次方 
console.log(0o17);   //15
console.log(0O17);   //15

console.log(044)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一只情绪稳定的老虎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值