// Undefined
var a; // 未定义就是undefined
console.log(typeof a === 'undefined');
console.log(a === undefined);
// 如果不声明就会报错
//console.log(b)
// 如果用typeof判断数据类型只要未定义声明还是没声明都是undefined
console.log(typeof c);
var d;
console.log(typeof d);
// Null
//使用数据类型判断Null是object
var e = null;
console.log(typeof car);
// undefined值派生自null值所以相等操作符为true
console.log(null == undefined);
//Boolean
//空字符串为false
var f = '';
if (f) {
console.log(1);
} else {
console.log(2);
}
//Number类型
//浮点数值最高精度是17位小数所以0.1+0.2!==0.3
var g = 0.1;
var f = 0.2;
if (g + f === 0.3) {
console.log('0.3');
}
// NaN为number
console.log(typeof NaN);
//NaN与任何都不相等包括他自己
console.log(NaN === NaN);
console.log(NaN == NaN);
// 我们可以用isNaN来判断是否不是数值
console.log(isNaN(true)); // 可以转化为1
console.log(isNaN('t'));
console.log(isNaN(NaN));
console.log(isNaN(1)); // 1
console.log(isNaN('1')); // 1
//数值转换我们可以用parseInt,Number,parseFloat
//Number很复杂所以我们不用
console.log(Number('heelo'), Number(""), Number("001"), Number(true), Number("true"));
//如果parseInt有第二个参数表示转换为几进制
console.log(parseInt("123Blue"), parseInt(""), parseInt("22.5"), parseInt("70"), parseInt("0xf"), parseInt("0xf", 16))
//parseFloat基本一样只是会保留浮点
console.log(parseFloat("22.6"));
//我们也可以判断是否是整数
console.log(Number.isInteger(123));
//String类型
//我们现在可以使用模板字符串拼接
var g ='2'
var h = '3'
console.log(`${g}${h}`);
//我们可以已使用toString将number, bool, obj, string变为字符串
// null和undefined除外,会报错
var i;
//console.log(i.toString());
// 如果我们将toString加上参数表示向多少进制转换
var j =20;
console.log(j.toString(16));
//字符串也可以for of循环
for(let val of "dsa"){
console.log(val);
};
// ES6中我们有了includes, startWith, endsWith
//第一个参数标示查询的字符串第二个参数在includes和startWith表示从第n个位置到字符串结束的位置
//在ensdWith表示前n个字符
var k = 'hi Jorge'
console.log(k.includes('o',1));
console.log(k.startsWith('hi',0));
console.log(k.startsWith('hi',1));
console.log(k.endsWith("hi", 2));
console.log(k.endsWith("hi", 3));
//object
//参照面向对象章节
// https://www.jianshu.com/p/4bcfc67478af
// Symbol会专门有一章节
网站首页 > 技术文章 正文
猜你喜欢
- 2025-07-27 抛弃立即执行函数 (IIFE),拥抱现代 JavaScript 块级作用域
- 2025-05-05 28.ECMAScript 标准深度解析(何为ecmascript)
- 2025-05-05 Vite 性能篇:掌握这些优化策略,一起纵享丝滑!
- 2025-05-05 前端常见20道高频面试题深入解析(前端面试题目100及最佳答案)
- 2025-05-05 2025 年 Object 和 Map 如何选择?
- 2025-05-05 学习ES6- 入门Vue(大量源代码及笔记,带你起飞)
- 2025-05-05 JavaScript去除数组重复元素的几种方法
- 2025-05-05 AI 自我升级神操作,难道真要开启 “天网” 序章?
- 2025-05-05 JavaScript 数组去重方法总结(js 数组去重的四种方法)
- 2025-05-05 20 个让人惊叹的 JavaScript 单行代码技巧,效率瞬间提升
- 10-02基于深度学习的铸件缺陷检测_如何控制和检测铸件缺陷?有缺陷铸件如何处置?
- 10-02Linux Mint 22.1 Cinnamon Edition 搭建深度学习环境
- 10-02AWD-LSTM语言模型是如何实现的_lstm语言模型
- 10-02NVIDIA Jetson Nano 2GB 系列文章(53):TAO模型训练工具简介
- 10-02使用ONNX和Torchscript加快推理速度的测试
- 10-02tensorflow GPU环境安装踩坑日记_tensorflow配置gpu环境
- 10-02Keye-VL-1.5-8B 快手 Keye-VL— 腾讯云两卡 32GB GPU保姆级部署指南
- 10-02Gateway_gateways
- 最近发表
-
- 基于深度学习的铸件缺陷检测_如何控制和检测铸件缺陷?有缺陷铸件如何处置?
- Linux Mint 22.1 Cinnamon Edition 搭建深度学习环境
- AWD-LSTM语言模型是如何实现的_lstm语言模型
- NVIDIA Jetson Nano 2GB 系列文章(53):TAO模型训练工具简介
- 使用ONNX和Torchscript加快推理速度的测试
- tensorflow GPU环境安装踩坑日记_tensorflow配置gpu环境
- Keye-VL-1.5-8B 快手 Keye-VL— 腾讯云两卡 32GB GPU保姆级部署指南
- Gateway_gateways
- Coze开源本地部署教程_开源canopen
- 扣子开源本地部署教程 丨Coze智能体小白喂饭级指南
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (76)
- js判断是否是json字符串 (75)
- c语言min函数头文件 (77)
- asynccallback (87)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 无效的列索引 (74)