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: 绝对值
相关推荐
dialect_7 小时前
KMP算法
开发语言·c++·算法
jktantan7 小时前
Vue keep-alive 切标签后滚动位置回顶?因为 onDeactivated 里读到的 scrollTop 是 0
前端·javascript·vue.js
总要学点什么8 小时前
第89篇:三维特效-螺旋圆效果——让螺旋臂卷起一圈圈外扩的涟漪
开发语言·javascript·ecmascript·webgl·cesium·空间分析·1024程序员节
前端精髓9 小时前
调用openrouter的免费API模型
java·前端·javascript
开开心心_Every9 小时前
快速隐藏程序工具自定义快捷键一键切换
java·开发语言·前端·spring·智能手机·word·intellij-idea
chenbingjie_c10 小时前
C++ 多态完全指南:从虚函数重写到虚函数表原理
开发语言·c++
吴卫斌10 小时前
定投ETF实战指南(四):行业/主题ETF——定投的“进攻端“
开发语言·python·股票·量化
超级架构师11 小时前
PRAXO-CORE 2.5.0:用 conformance 和显式边界构建 Go Agent 框架
开发语言·人工智能·后端·golang·ai编程·智能体框架·praxo-core
叼烟扛炮11 小时前
Linux 学习笔记(四十三):网络编程进阶——自定义协议解决 TCP 粘包与守护进程
linux·开发语言·网络·笔记·tcp/ip
LMT流氓兔12 小时前
第五单元——第十六课:给书店助手加上网页界面
java·开发语言·jvm·人工智能·oracle·langchain·1024程序员节