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), 与前者相反,后者是先加一再赋值。

相关推荐
不会C语言的男孩2 小时前
C++ Primer 第18章:用于大型程序的工具
开发语言·c++
竹林8182 小时前
监听智能合约事件,我用 wagmi v2 踩了三天坑,终于找到了稳定方案
前端·javascript
星栈2 小时前
Makepad 界面怎么做得更像产品,而不是示例
前端·rust
用户852495071842 小时前
Bun 到底是什么?一个比 Node.js "更快更香"的 JS 运行时
javascript·程序员
Momo__2 小时前
SSR 懒水合四件套 — 99%的人不知道 Vue 3.5 藏了这些水合策略
前端·vue.js·性能优化
riuphan2 小时前
JavaScript 事件循环:单线程异步编程的核心机制
前端·javascript
星恒随风2 小时前
C++ 类和对象入门(三):拷贝构造、赋值运算符重载和深浅拷贝
开发语言·c++·笔记·学习
小小龙学IT2 小时前
Midscene.js:AI驱动的跨平台UI自动化革命
javascript·人工智能·ui
RickyWasYoung2 小时前
【Matlab】科研绘图配色-极简版
开发语言·matlab
凡人叶枫2 小时前
Effective C++ 条款03:尽可能使用 const
linux·开发语言·c++·嵌入式开发