JavaScript系列------3

1. 逻辑中断

  • 短路:只存在于 && 和 || 中,当满足一定条件会让右边代码不执行。

|------|-------------|
| 符号 | 短路条件 |
| && | 左边为false就短路 |
| || | 左边为true就短路 |

  • 原因:通过左右能得到整个式子的结果,以此没必要再判断右边。
html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        let age = 19
        console.log(false && age++)
        console.log(age)
    </script>
</body>
</html>

输出的age仍然为18,没有执行age++,因为不执行这一句,一假则假。

  • console.log( x || y ) 都是真,返回最后一个真值。

  • console.log( x && y ) 都是真,输出第一个真值。

2. 转换为Boolean型

显示转换:

(1)Boolean(内容)

记忆:''、0、undefined、null、false、NaN转换为布尔值后都是false,其余则为true

3. 对象是什么

对象(object):JavaScript里的一种数据类型。

可以理解为一种无序的数据集合,注意数组是有序的数据集合。

3.1 对象使用

  1. 对象声明语法
html 复制代码
let 对象名 = {}
html 复制代码
let 对象名 = new Object()
  1. 对象由属性和方法组成
html 复制代码
let 对象名 = {
    属性名: 属性值,
    方法名: 函数
}
  • "查"属性: 对象名.属性名
  • "改"属性:对象名.属性名 = 新值
  • "删"属性:delete(对象名.属性名)

3.2 对象中的方法

数据行为性的信息称为方法,一般是动词性的,其本质是函数。

html 复制代码
let person = {
    name: 'andy',
    sayHi: function() {
        docunment.write('hi~~')
    }
}
  • 方法是由方法名和函数两部分构成,它们之间使用**:**分割
  • 多个属性之间使用英文**,**分割
  • 方法是依附在对象中的函数
  • 方法名可以使用 "" 或 '' , 一般情况下省略,除非名称遇到特殊符号如空格、中横线等

3.3 遍历对象

(1)输出属性名:'uname' ;age'

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        let pink = {
            uname: 'pink老师',
            age: 18,
            gender: '女',
            song: function() {
                console.log('冰雨')
            }
        }
        // console.log(pink);
        for (let key in pink) {
            console.log(key)
        }
    </script>
</body>
</html>

输出为:

(2)输出属性值

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        let pink = {
            uname: 'pink老师',
            age: 18,
            gender: '女',
            song: function() {
                console.log('冰雨')
            }
        }
        // console.log(pink);
        for (let key in pink) {
            console.log(pink[key])
        }
    </script>
</body>
</html>

输出为:

一定记住:k 是获得对象的属性名对象名k 是获得属性值

3.4 内置对象:可以参考链接使用

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide

详细介绍一些内置对象 Math:

Math对象是JavaScript提供的一个**"数学"对象。**

Math对象包含的方法有:

  • random: 生成0-1之间的随机数(包含0不包含1)
  • ceil: 向上取整
  • floor: 向下取整
  • max: 找最大数
  • min: 找最小数
  • pow: 幂运算
  • abs: 绝对值
相关推荐
山河木马12 小时前
矩阵专题3-怎么创建投影矩阵(uProjectionMatrix)
javascript·webgl·计算机图形学
泯泷14 小时前
第 2 篇:设计第一套字节码:Opcode、Instruction 与 Constant Pool
前端·javascript·安全
泯泷14 小时前
第 1 篇:从 1 + 2 开始:亲手写出第一台 JSVM
前端·javascript·安全
朦胧之14 小时前
页面白屏卡住排查方法
前端·javascript
犇驫聊AI15 小时前
Chrome DevTools MCP + Claude Code 自定义skills生成接口代码生成器
前端·javascript
kyriewen15 小时前
别再这样写 async/await 了:我在 Code Review 中见过最多的 8 个错误
前端·javascript·面试
用户2986985301420 小时前
在 React 中使用 JavaScript 将 Excel 转换为 SVG
前端·javascript·react.js
labixiong21 小时前
手写Promise--微任务、静态方法、async/await 全搞懂(三)
前端·javascript
铁皮饭盒1 天前
3行代码搞定页面截图,Bun.WebView真的简单
javascript
kyriewen1 天前
我手写了一个 EventEmitter,面试官追问了 6 个问题——第 4 个我没答上来
前端·javascript·面试