Yêu cầu thg 10 26, 2022 10:04 SA 150 2 3
  • 150 2 3
+1

Function trong js?

Chia sẻ
  • 150 2 3

Em đang thắc mắc cách sử dụng function trong js ví dụ:

$(".customNextBtn").click(function () {
      owl.trigger("next.owl.carousel");
    });
 tại sao không phải là:
$(".customNextBtn").click(){
      owl.trigger("next.owl.carousel");
};

em vẫn chưa nắm được giữa function a({//doSomething})function a(){//doSomething} 2 thằng này khác nhau ở điểm nào và dùng trong những trường hợp ntn ạ? Em cảm ơn!!!

3 CÂU TRẢ LỜI


Đã trả lời thg 10 27, 2022 1:27 SA
Đã được chấp nhận
+7

Để hiểu rõ được vấn đề ở trên, em nên nắm được các khái niệm như sau:

Ở trong 2 ví dụ của em thì ví dụ thứ 2:

$(".customNextBtn").click(){
      owl.trigger("next.owl.carousel");
};

là một đoạn code sai cú pháp, sẽ không thể chạy được. $(".customNextBtn").click() là một lời gọi hàm (Function Invocation), tuy nhiên sau đó lại xuất hiện cú pháp {} không xác định.

còn ví dụ thứ nhất

$(".customNextBtn").click(function () {
      owl.trigger("next.owl.carousel");
    });

thì ta có thể giải thích bằng những khái niệm ở phía trên như sau:

  • $(".customNextBtn").click() dùng để define event click vào một element
  • Ta truyền một tham số vào hàm đó. Tham số này hơi đặc biệt ở chỗ nó không phải là một số tự nhiên, một chuỗi, hay một mảng thông thường, mà nó là một hàm số
  • Tham số truyền vào này là một function expression
  • Tham số truyền vào này là một callback function, nó sẽ được gọi để chạy, khi mà button được click
Chia sẻ
Avatar GhostYYY @bvk199x
thg 10 27, 2022 4:33 SA

Wow +1 respect a ^^

thg 10 27, 2022 6:06 SA

quá tâm huyết, respect!

Đã trả lời thg 10 26, 2022 2:01 CH
+2
1: hình như function thứ 2 bạn viết hơi sai
$(".customNextBtn").click(() => {
      owl.trigger("next.owl.carousel");
})

viết như thế này chỉ để cho code ngắn thôi chứ trong trường hợp này thì sài kiểu nào cũng đc nhé

2: Có 3 loại function trong javascript:
    1. Declaration function:
function hello(name) {
   console.log('Hello:', name)
}
    1. Expression function
const hello2 = function(name) {
   console.log('Hello:', name)
}
    1. Arrow function
const hello3 = (name)  => {
   console.log('Hello:', name)
}

Bạn có thểm xem thêm video của kênh F8 Official nhé

Chia sẻ
Đã trả lời thg 10 26, 2022 2:03 CH
+1

cái đấy người ta gọi là callback, tức pass function as param

cái .click() là 1 lời gọi hàm chứ ko phải khai báo hàm

Chia sẻ
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí