JavaScript基础(三)

JS的数据类型

数据类型+解释

undefined

如var num;变量num没有初始值将被赋予undefined[基本数据类型]。

null

表示一个空值,与undefined值相等[对象]。

number

例:var num=10; //整数,var num=10.5; //浮点型。

boolean

布尔型,true和false。(严格大小写)

string

被引号(单引号或双引号)括起来的文本,如:var string1="你真帅";

object

属性集合,每个属性都由"名/值"成对构成,如{name:'小明',age:12}(最后一个没有逗号)

typeof 变量名; 可查看变量是什么数据类型,

这里我们就用typeof验证前面的数据类型:

<script>

//声明一个变量

var a;

//用另一个变量接收一下typeof

var nam = typeof a;

//可以用alert或console.log();打印出来看一下,

//这里用alert更直观

alert(nam);

</script>

这里写一个打打样,后面以下照着样式就能验证,类型在后面标注好了

var a; //undefined

var a=null; //object

var a=10; //number

var a=10.5; //number

var a=true; //boolean

var a="10"; //string

object单独写一下:

<script>

var a={

name:'小明',

age:18,

hobby:'js'

};

var nam = typeof a;

alert(nam);

</script>

算术运算符

运算符类型与相应运算符

算术运算符 +, --, *, /, %, ++, ----.

赋值运算符 =

比较运算符 >, <, >=, <=, ==, !=

逻辑运算符 &&, ΙΙ, !

+:加号

<script>

var a=1;

var b=2;

var c=a+b;

console.log(c);

</script>

那当a与b数据类型不同,比如b是string字符串类型,此时+就起到了拼接的作用:

<script>

var a=1;

var b='2';

var c=a+b;

console.log(c);

</script>

那拼接后的变量c的数据类型是什么呢?

console.log(typeof c);看一下

可以看到它这个c转成了引用数据类型,为啥?这是因为number存储的长度比string存储长度短。

就好比两个桶,都装着水,一个大一个小,我们不知道水有多少,倒在一起,肯定是倒进大桶里。

加号也可以实现内容的拼接,如:

console.log('输出结果是:'+ c);

这和我们之前说过的java是一样的,不只是java对于这些语言类,他们很多知识都是相通的。

--:减号

<script>

var a=1;

var b=2;

var c=a-b;

console.log(c);

</script>

如果我们再把b数据类型变一下

<script>

var a=1;

var b='2';

var c=a-b;

console.log(c);

</script>

结果没变,因为减法会对变量做隐式转换,只要能转成number类型,全部转成number类型再运算。

如果无法转换成number类型,将无法运算,返回结果NaN(not a number)。

*:乘法

<script>

var a=1;

var b='4';

var c=a*b;

console.log(c);

</script>

也是可以进行隐式转换的,不能转也返回NaN

除法/也一样,就不看了。

取余:%

<script>

var c=10%3;

console.log(c);

</script>

当被除数小于除数时取本身。

//取余知道了,那怎么取商?

var c=10/3;

console.log(c);

带一串余数,只想要商,这么整:

console.log(parseInt(c));

//这个它是不存在四舍五入的。

赋值运算

<script>

var a=1;

var b=2;

//ab值互换,借助中间变量

var c=a;

a=b;

b=c;

console.log('a的值是'+a);

console.log('b的值是'+b);

</script>

比较运算符

比较简单,没啥说的,==:判断值是否相等。

===:①判断数据类型是否相等,②值是否相等。(全等)

++自增 和 --自减

++自身加1,num++: num=num+1;

--自身减1,num--: num=num-1;

<script>

var num =10;

num++;

console.log(num);

</script>

//++在前,先运算再赋值

//++在后,先赋值再运算。

相关推荐
xlsw_7 分钟前
java全栈day21--Web后端实战之利用Mybaits查询数据
java·开发语言
放逐者-保持本心,方可放逐16 分钟前
SSE 流式场景应用 及 方案总结
javascript·axios·fetch·eventsource
Murphy202322 分钟前
.net4.0 调用API(form-data)上传文件及传参
开发语言·c#·api·httpwebrequest·form-data·uploadfile·multipart/form-
我曾经是个程序员32 分钟前
C#Directory类文件夹基本操作大全
服务器·开发语言·c#
白云~️34 分钟前
uniappX 移动端单行/多行文字隐藏显示省略号
开发语言·前端·javascript
编码浪子39 分钟前
构建一个rust生产应用读书笔记7-确认邮件2
开发语言·后端·rust
天之涯上上1 小时前
JAVA开发 在 Spring Boot 中集成 Swagger
java·开发语言·spring boot
2402_857583491 小时前
“协同过滤技术实战”:网上书城系统的设计与实现
java·开发语言·vue.js·科技·mfc
小华同学ai1 小时前
vue-office:Star 4.2k,款支持多种Office文件预览的Vue组件库,一站式Office文件预览方案,真心不错
前端·javascript·vue.js·开源·github·office
爱学习的白杨树1 小时前
MyBatis的一级、二级缓存
java·开发语言·spring