初识JavaScript
JavaScript诞生
1995年诞生
名字变更: Mocha 》 Live Script 》 JavaScript
JavaScript概述
JavaScript 是轻量级、单线程的语言(一个线程解析)
是弱语言(没有固定的类型划分,给的值是什么类型就是什么类型)
是脚本语言(侵入、实现xss攻击)
JavaScript构成
JavaScript是由三方面构成
ECMAScript:基本语法及相关对象 es3 es5 es6 ...
DOM:文档对象模型 操作HTML
BOM:浏览器对象模型 操作浏览器
JavaScript书写
在script标签里写
在js文件里写(外链)
书写对应事件属性里写(类似于行内样式)
var 定义变量
console.log() 调用并在在控制台打印
命名规范
见名知意 区分大小写 有字母数字下划线美元符号构成(不能数字开头) 不能用关键字或保留字命名 驼峰命名法
数据类型
number String boolean null undefined object
typeof查看对应类型 (查看null类型会显示object)
console.log(typeof null);
类型转换
number类型转为String类型: .toString方法
string转number:
直接转number类型
console.log(Number(str))
//内容里有无法转化的内容是会出现NaN(not a number)
使用parseInt方法 (转为整型)
使用parseFloat方法 (转为小数)
/*parseInt和parseFloat 内容里有无法转化的内容时会从前往后拿数值,
遇到无法转换内容为止,一开始就无法转换则显示NaN*/
isNaN:判断是否为NaN, 是返回true,不是返回false
Infinity:无穷大
var max = Infinity
-Infinity:无穷小
var min = -Infinity
字符串类型转换为boolean类型
非空就是true 空字符串为false
number转boolean
非0和非NaN则为true NaN和0为false
undefined和null转为boolean 都是false
boolean转为number
console.log(Numcer(true)) // 1
console.log(Number(false)) //0
undefined和null转为number
undefined:false null:0
运算符和表达式
算术运算
+ - * / % ++ --
自加和自减前置和后置的区别
前置先执行对应的++(--)在执行对应的代码
后置先执行对应的代码 再执行++ (--)
逻辑运算
&& 与 || 或 !非
比较运算
> < = >= <= == != ===(全等 两个类型和对应的值一摸一样 )
赋值运算
= += -= /= *= %=
var j = 10
j+=100 //j=j+100 =110
j/=10 //j=j/10 =11
j*=5 //j=j*5 =55
console.log(j); 55
位运算(转为二进制再进行位的运算变化)
>>右移 <<左移 ~~去掉小数
面试题 : 如何让2最快变成8?
让2 位运算左移两位 0010<<2 得到 1000
三元运算符(三目运算符)
表达式(boolean类型表达式 ) ? true的内容 : false的内容
var a = 10;
var b = 20;
a>b?10:20 // 20
a>b?true的值:false的值 //false的值
number对应的方法
默认的大小16位 整数位也是16位 超出不能显示(问题)
保留小数(方法会优先调用) 转成字符串 toFixed()
console.log((number2/number1).toFixed(3));
总结
- Number方法 转为number类型的值
- Boolean方法 转为boolean类型的值
- String 方法 转为string的值 (toString方法)
- toFixed 方法 转为字符串 保留多少位小数
- ++自增和-- 自减(前置和后置的区别)
- Infinity 表示无穷大 -Infinity表示无穷小
- isNaN 判断是否为NaN
- typeof 检索对应的类型 (所有的引用类型都是object 其他显示对应的值类型)
- 变量名的书写使用var关键词来声明变量
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本