javascript_1

本文介绍了JavaScript中字符串的三种写法,包括双引号、单引号和反引号。还探讨了模板字符串的使用,以及number和bigint类型的区别,重点讲解了TruthyFalsy的概念以及Function、箭头函数的定义和用法。
摘要由CSDN通过智能技术生成
3) string ⭐️

js 字符串三种写法

let a = "hello";  // 双引号
let b = "world";  // 单引号
let c = `hello`;  // 反引号

html 代码如下,用 java 和 js 中的字符串如何表示?

<a href="1.html">超链接</a>

java 显得比较繁琐

String s1 = "<a href=\"1.html\">超链接</a>";
//第二种写法,和上面的写法对等
String s2 = """
    <a href="1.html">超链接</a>""";

js 就比较灵活

let s1 = '<a href="1.html">超链接</a>';

let s2 = `<a href="1.html">超链接</a>`;

模板字符串(Template strings)

需求:拼接 URI 的请求参数,如

/test?name=zhang&age=18
/test?name=li&age=20

传统方法拼接

let name = ; // zhang li ...
let age = ; // 18 20 ...

let uri = "/test?name=" + name + "&age=" + age;

模板字符串方式

let name = ; // zhang li ...
let age = ; // 18 20 ...

let uri = `/test?name=${name}&age=${age}`;

 

4,5) number 和 bigint⭐️

number 类型标识的是双精度浮动小数,例如

  • 既然是浮点小数,那么可以除零
  • 浮点小数都有运算精度问题,例如
  • 字符串转数字
  • 要表示真正的整数,需要用 bigint,数字的结尾用 n 表示它是一个 bigint 类型
  • 6) boolean ⭐️
  • Truthy

  • Falsy

  • 在 js 中,并不是 boolean 才能用于条件判断,你可以在 if 语句中使用【数字】、【字符串】... 作为判断条件

这时就有一个规则,当需要条件判断时,这个值被当作 true 还是 false,当作 true 的值归类为 truthy,当作 false 的值归类为 falsy

下面值都是 falsy

false

Nullish (null, undefined)

0, 0n, NaN

"" '' `` 即长度为零的字符串

剩余的值绝大部分都是 truthy

有几个容易被当作 falsy 实际是 truthy 的

  • "false", "0" 即字符串的 false 和 字符串的零

  • [] 空数组

  • {} 空对象

7) symbol
  • 很少使用

对象类型

1) Function ⭐️⭐️
定义函数
function 函数名(参数) {
    // 函数体
    return 结果;
}

function add(a, b) {
    return a + b;
}
调用函数

函数名(实参);

js 中的函数调用特点:对参数的类型个数都没有限制,例如

默认参数

java 中(spring)要实现默认参数的效果得这么做:

@RestController 
public class MyController {

    @RequestMapping("/page")
    @ResponseBody
    public void page(
        @RequestParam(defaultValue="1") int page, 
        @RequestParam(defaultValue="10") int size
    ){
        // ...
    }
}

js

function pagination(page = 1, size = 10) {
    console.log(page, size);
}
匿名函数

语法

(function (参数) {
    // 函数体
    return 结果;
})

(function(a,b){
    return a + b;
})

第一种场景:定义完毕后立刻调用

第二种场景:作为其它对象的方法,例如

页面有元素

<p id="p1">点我啊</p>

此元素有一个 onclick 方法,会在鼠标单击这个元素后被执行,onclick 方法刚开始是 null,需要赋值后才能使用

document.getElementById("p1").onclick = (function(){
    console.log("鼠标单击了...");
});
箭头函数
(参数) => {
    // 函数体
    return 结果;
}
  • 如果没有参数,() 还是要保留

  • 如果只有一个参数,() 可以省略

  • 如果函数体内只有一行代码,{} 可以省略

  • 如果这一行代码就是结果,return 可以省略

点击p标签之后

函数是对象

以下形式在 js 中非常常见!

  1. 可以参与赋值,例,具名函数也能参与赋值

  • 点击p标签之后

  • 有属性、有方法,执行 console.dir(abc),输出结果如下

  • 其中带有 f 标记的是方法,不带的是属性

  • 带有 ➡ 符号的可以继续展开,限于篇幅省略了

  • 带有 [[ ]] 的是内置属性,不能访问,只能查看

  • 相对重要的是 [[Prototype]][[Scopes]] 会在后面继承和作用域时讲到

  • 可以作为方法参数

  • 可以作为方法返回值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

敲代码的翠花

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值