js入门01

2025.7.13

只讲难点

1、js引入外部文件的两种方式

2、js变量分类number,string,boolean,object。console.log();一定要写分号,因为js会压缩文件

3、逻辑运算符 &&短路与 || 短路或 , ! 非,

"" , "="

python 复制代码
 // python: print( 1 == '1' )  # False  # 两种数据类型不一样的东西. 是没法比较的.

         // console.log(1 == '1');  // true , == 等号在进行计算的时候. 中间会有一次隐形的数据类型转换的过程
         // console.log(1 === '1'); // false, ===等号在进行计算的时候. 不会做数据类型转换的

4、 数字和字符串 相互转换。toString,+"", parseInt, typeof, isNan

5、++操作(难点)

python 复制代码
// // 蛋疼的逻辑
// var a = 10;  //  ++在前先运算, ++在后先赋值
// var b = a ++; // a++ 此时, 表达式的结果: a在运算之前的数据
// console.log(a);  // 11
// console.log(b);  // 10
python 复制代码
// function fn(a){ // 局部的
//     console.log(">>>", a); // 10
// }
 //
// fn(a++);
// console.log(a); //11

这段代码可以写成如下:

python 复制代码
// function fn(a){ // 局部的
//     console.log(">>>", a); // 10
// }
// temp = a++;
// fn(temp);
// console.log(a); //11

可以理解为 temp =a 先赋值,然后 a再自增1。先赋值,再自增。

python 复制代码
// 全局和局部, ++ 
var a = 1;
function fn1(a) {
    function fn2() {
        console.log("》》》》》》》", a);// 3
    }
    a ++;
    fn2(); //
    console.log(a) // 3
    
}
fn1(++a);


// fn2会不断往外层找
// 区分局部变量和全局变量,fn1和fn2里面都是局部变量

解读:

fn1()执行后如下步骤:

全局和局部变量就想象成全国和某省的张三。比如fn(a)这个a就是fn省里的,和全国没直接关系。

fn(a++)和fn(++a), 与前者相反,后者是先加一再赋值。

相关推荐
扫地的小何尚2 小时前
NVIDIA Dynamo深度解析:如何优雅地解决LLM推理中的KV缓存瓶颈
开发语言·人工智能·深度学习·机器学习·缓存·llm·nvidia
回忆哆啦没有A梦2 小时前
Vue页面回退刷新问题解决方案:利用pageshow事件实现缓存页面数据重置
前端·vue.js·缓存
A_ugust__3 小时前
vue3+ts 封装跟随弹框组件,支持多种模式【多选,分组,tab等】
前端·javascript·vue.js
林九生3 小时前
【Vue3】v-dialog 中使用 execCommand(‘copy‘) 复制文本失效的原因与解决方案
前端·javascript·vue.js
yi碗汤园3 小时前
【一文了解】C#的StringSplitOptions枚举
开发语言·前端·c#
无敌最俊朗@5 小时前
C++ 序列容器深度解析:vector、deque 与 list
开发语言·数据结构·数据库·c++·qt·list
Da Da 泓5 小时前
LinkedList模拟实现
java·开发语言·数据结构·学习·算法
cxr8285 小时前
BMAD框架实践:掌握story-checklist提升用户故事质量
前端·人工智能·agi·智能体·ai赋能
emma羊羊5 小时前
【xsslabs】第12-19关
前端·javascript·靶场·xss
Humbunklung5 小时前
VC++ 使用OpenSSL创建RSA密钥PEM文件
开发语言·c++·openssl