JavaScript个人学习笔记(一)

JavaScript分3个部分

  1. ECMAScript标准 —— js的基本语法
  2. DOM —— Document Object Model 文档对象模型
  3. BOM —— Browser Object Model 浏览器对象模型

JavaScript是什么?

  • 是一门脚本语言(不需要编译,直接执行)
  • 是一门解释性语言
  • 是一门动态类型的语言
  • 是一门基于对象的语言

js应用场景

  1. 网页特效
  2. 服务端开发
  3. 命令行工具
  4. 桌面程序
  5. APP
  6. 控制硬件物联网
  7. 游戏开发

注意 script 标签格式

严格模式下(或除h5外),要写

<script type="text/javascript"></script>
//或者
<script language="JavaScript"></script>
//也可以同时出现
<script language="JavaScript" type="text/javascript"></script>

变量名注意问题

  1. 变量名要有意义
  2. 规范:一般以字母 、$ 符号、_下划线开头,中间或后面可以有$符号、字母、数字
  3. 变量名一般都是小写
  4. 如果是多个单词,第一个单词的首字母是小写的,后面所有单词首字母大写 ,称为:驼峰命名法
  5. 不能使用关键字
var bigNumber = 10;

变量的交换

  1. 使用第三方变量进行交换
//1.使用第三方变量进行交换
var num1 = 10;
var num2 = 20;
//把 num1 的变量值取出来放到 temp 变量中
var temp = num1;
//把 num2 的变量值取出来放到 num1 变量中
num1 = num2;
//把 temp 的变量值取出来放到 num2 变量中
num2 = temp;
//输出
console.log(num1); //20
console.log(num2); //10
  1. 一般适用于数字的交换
//2.一般适用于数字的交换
var num1 = 10;
var num2 = 20;
num1 = num1 + num2; //30
num2 = num1 - num2; //10
num1 = num1 - num2; //20
cons0le.log(num1, num2); //20 10
  • 扩展的变量交换:位运算(不需要理解)
var num1 = 10;
var num2 = 20;
num1 = num1 ^ num2;
num2 = num1 ^ num2;
num1 = num1 ^ num2;
console.log(num1, num2);

数据类型

js原始数据类型:number, string, boolean, null, underfined, object

  • number: 数字类型(整数和小数)
  • string: 字符串类型
  • boolean: 布尔类型(true(真1)、false(假0))
  • null: 空类型, 值只有一个 null
  • undefined: 未定义, 值只有一个:undefined
    ①变量声明了,没有赋值
    ②函数没有明确返回值,接收了
    ③如果undefined变量和数字计算,结果是 : NaN不是一个数字,没有意义
  • object: 对象类型

获取变量的数据类型

  • typeof
/*typeof 使用方法
typeof 变量名
typeof(变量名)
*/
var num = 10;
console.log(typeof num); //number

数字类型(number类型)

  1. 数字类型有范围: 最大值和最小值
console.log(Number.MAX_VALUE);// 数字的最大值
console.log(Number.MIN_VALUE); //数字的最小值
/*
无穷大:Infinity
无穷小:-Infinity
*/
  1. 不要用小数验证小数(有bug)
var x = 0.1;
var y = 0.2;
var sum = x + y; //0.3000...04
console.log(sum == 0.3); //false
  1. 不要用NaN验证是不是NaN
    应该用 isNaN() 验证
var num;
console.log(isNaN(num+10)); //true
  1. 进制
    想要表示十进制: 就是正常的数字
    想要表示八进制: 以0开头
    想要表示十六进制: 0x开头
var num = 10; //十进制
var num2 = 012; //八进制
var num3 = 0x12; //十六进制

字符串类型(string类型)

  • 字符串的长度: str.length

  • 转义符
    html中转义符
    在这里插入图片描述
    在这里插入图片描述
    js中转义符
    在这里插入图片描述

  • 字符串的拼接

var str = "哈哈哈";
var str2 = "嘎嘎";
console.log(str1+str2); 

布尔类型(boolean类型)

  • true
  • false

undefined和null类型

object(复杂类型)

Symbol类型(ECMAScript6新定义)

类型转换

其他类型转数字类型

  1. 转整数
console.log(parseInt("10")); //10
console.log(parseInt("10afsdfads")); //10
console.log(parseInt("f10")); //NaN
console.log(parseInt("1dgsad")); //1
console.log(parseInt("10.98")); //10
console.log(parseInt("10.98uhj")); //10
  1. 转小数
console.log(parseFloat("10")); //10
console.log(parseFloat("10afsdfads")); //10
console.log(parseFloat("f10")); //NaN
console.log(parseFloat("1dgsad")); //1
console.log(parseFloat("10.98")); //10.98
console.log(parseFloat("10.98uhj")); //10.98
  1. 转数字
console.log(parseNumber("10")); //10
	console.log(parseNumber("10afsdfads")); //NaN
console.log(parseNumber("f10")); //NaN
console.log(parseNumber("1dgsad")); //NaN
console.log(parseNumber("10.98")); //10.98
console.log(parseNumber("10.98uhj")); //NaN

其他类型转字符串类型

  1. .toString()
var num = 10;
console.log(num.toString);
  1. String()
var num = 10;
console.log(String(num));
//如果变量有意义调用.toString()
//如果变量没有意义使用String()
var num2;
//var num2 = null;
console.log(String(num2));

其他类型转布尔类型

  1. Boolean(值);
console.log(Boolean(1)); //true
console.log(Boolean(0)); //false
console.log(Boolean(11)); //true
console.log(Boolean(-10)); //true
console.log(Boolean("哈哈")); //true
console.log(Boolean("")); //false
console.log(Boolean(null)); //false
console.log(Boolean(undefined)); //false

操作符

  1. 算数运算符:
+  -  *  /  %

算数运算表达式:由算数运算符连接起来的表达式
① 一元运算符: 只需要一个操作数就可以运算

 ++     
 --

② 二元运算符:只需要一个操作数就可以运算
③ 三元运算符: (第二天)
2. 符合运算符:

+=  
-=  
*=  
%=
  1. 关系运算符
<  >  <=  >=  
==  不严格的
===  严格的
!=  
!==

结果是布尔类型
关系运算表达式:由关系运算符连接起来的表达式
4. 逻辑运算符

&& 逻辑与、并且
|| 逻辑或、或者
! 逻辑非、取反、取非

逻辑运算表达式:由逻辑运算符连接起来的表达式

  1. 赋值运算符
=   +=   -=  *=  /=  %=
  • 运算符的优先级
优先级从高到低
1.() 最高
2.一元运算符  ++  --  !
3.二元运算符  先 * / % 后 + - 
4.关系运算符  >  >=  <  <=
5.相等运算符  ==  !=  ===  !==
6.逻辑运算符  先&&  后||
7.赋值运算符

字面量

把一个值直接赋值给一个变量

//声明变量并初始化
var num = 0;
var flag = true;
var str = "哈哈";
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值