数据类型及运算

JavaScript

1、基本输出语句
alert():页面弹出一个警告框
document.write():在页面中body元素书写内容
console.log():向控制台输出内容

2、编写位置
(1)可以将js代码编写到onclick、href属性中

<button onclick="alert('点我');">点我</button>

<a href="javascript:alert('点我')">点我</a>

虽然可以写在标签的属性中,但是他们属于结构与行为耦合,不方便维护。

(2) 可以将js代码写在script标签中

<script type="text/javascript">
alert("我是script标签内的代码");
</script>

(3)可以将js代码编写到外部js文件中,然后通过script标签引入。外部js文件可以是与包含它的页面位于同一个服务器的文件,也可以是其他任何域上的文件。

<script type="text/javascript" src="script.js"></script>

这样可以在不同页面中同时引用,也可以利用浏览器的缓存。script标签一旦用于引用外部js文件,就不能在其内部编写代码,即使编写也会被浏览器忽略,如果需要则可以创建一个新的script标签用于编写内部代码。

注意:某些网页需要大量js代码时,如果将他们全部放在head标签中,那么在打开网页前会加载完所有js代码才会呈现页面内容,所以现在web应用程序一般都把全部js引用放在body标签内容的后面。

在不使用defer和async属性的情况下,所有的script元素会按照他们在页面中出现的先后顺序依次被解析。

3、基本语法
多行注释/* */
单行注释 //
JS严格区分大小写,每一条语句应该以分号结尾,且会忽略多个空格和换行

4、标识符
变量名、函数名、属性名都属于标识符。
标识符中可含有数字、字母、$、_,且不能以数字开头,不能是JS中的关键字或者保留字。一般采用驼峰命名法(首字母小写,其余单词首字母大写,剩下字母小写)。
注意:JS底层保存标识符实际采用的Unicode编码,所有utf-8中含有的内容都可以作为标识符。

使用关键字作为标识符,会导致"Identifier Expected"的报错 identifier标识符

5、数据类型
String 字符串
Number 数值
Boolean 布尔值
Null 空值
Undefined 未定义
Object 对象

String、Number、Boolean、Null、Undefined属于基本数据类型,而Object属于引用数据类型

在字符串中可以用 \ 作为转义字符

整数和浮点数都是Number类型

typeof 变量 用来检验变量的类型

JS中可以表示的数字最大值 Number.MAX_VALUE,若使用Number表示的数字超过最大值,则会返回一个Infinity,表示正无穷,比如Number.MAX_VALUE*2。Number.MIN_VALUE表示最小的正数

NaN也是number类型,“abc” * "bcd"将会返回一个NaN

Null类型的值只有一个,就是null,专门用来表示一个空对象,使用typeof返回object类型。

Undefined也只有一个值,undefined,当声明一个变量,但是不给他赋值时,它的值就是undefined。

6、强制类型转换

(1)将其他数据转类型换成String
方式一:调用被转换数据类型的toString()方法

var a = 123;
a.toString();

var b = a.toString()
a = a.toString();

注意:null和undefined没有toString()方法,但是有String函数

方式二:调用String()函数

a = 123;
a = String(a);

(2)将其他数据转类型换成Number
使用Number函数,但是非数字字符串则转换成NaN,空串或者一个全是空格的字符串,则转换成0.true为1,false为0;null转为0;undefined转为NaN。

parseInt()、parseFloat()可以提取字符串中有效的整数和小数内容。若是非字符串,则先转为字符串再操作

a = "123a567px";
a = parseInt(a); //123

在js中如果要表示16进制的数字,则需要以0X开头;以0开头表示八进制数字;以0b开头表示二进制数字。
像“”070“字符串,有些浏览器会当成八进制,可以在parseInt传递第二个参数a = parseInt(a,10)

(3)将其他数据转类型换成Boolean值

var a = 123;
a = Boolean(a);
//0和NaN、空串、null、undefined都转换为false

7、运算符
任何值和NaN做运算都为NaN
数字和字符串做运算分三种情况:
(1)加号运算,无论怎么变换位置,结果都为字符串
(2)字符串作为第一个,且前面有+
如: +‘12’+12=24
(3)其他运算符,统统将字符串转换为数字

100 - “1” = 99;
1 + 2 + “3” = “33”;
“1” + 2 + 3 = “123”;
2 * “8” =16;

任何值做 * - /运算都会自动转换为Number类型,乘1、除1、减0可以使字符串转换为Number

一元运算符
a = 123
a = +a //结果无影响 字符串则会转换成数字,1 + +”2" + 3 = 6
a = -a //结果取反
a = -true // -1
a = -“18” // -18
任何非number类型的值,会先转换为number,然后运算

自增自减运算符

++a a自增后的值 a++ a自增前的值
++a a++ 执行后 a立即加1

var c=10;
c++
console.log(c++) //11 只要出现c++,立刻自增

var c=10;
console.log(c++) // 10

var d =20;
res = d++ + ++d +d //20+22+22=64

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值