Đề Xuất 6/2023 # Tất Cả Thuật Ngữ Về Seo/Sem (P2) # Top 12 Like | Sieuphampanorama.com

Đề Xuất 6/2023 # Tất Cả Thuật Ngữ Về Seo/Sem (P2) # Top 12 Like

Cập nhật nội dung chi tiết về Tất Cả Thuật Ngữ Về Seo/Sem (P2) mới nhất trên website Sieuphampanorama.com. Hy vọng thông tin trong bài viết sẽ đáp ứng được nhu cầu ngoài mong đợi của bạn, chúng tôi sẽ làm việc thường xuyên để cập nhật nội dung mới nhằm giúp bạn nhận được thông tin nhanh chóng và chính xác nhất.

Thuật ngữ Organic Search Result Organic Search Result là gì? Organic Search Result là kết quả tìm kiếm tự nhiên trong trang kết quả tìm kiếm của các công cụ tìm kiếm. Ngoài Organic Search Result trang kết quả tìm kiếm còn có Paid Search Result.

Thuật ngữ PERMALINK Permalink là gì? Permalink là một địa chỉ URL của một bài viết cụ thể trên một website.

Thuật ngữ POST Post là gì? Post đồng nghĩa với “article”. Về cơ bản, một post là một article trong một website.

Thuật ngữ PPL PPL là gì? – Pay Per Lead; PPS là gì? – Pay Per Sale: tham khảo thuật ngữ CPA ở trên.

Thuật ngữ SEM SEM là gì? SEM – Search Engine Marketing là hình thức Marketing qua công cụ tìm kiếm, bao gồm Google Adwords và SEO

Thuật ngữ SERP

SERP là gì? SERP được viết tắt dựa trên cụm từ Search Engine Results Page, tạm dịch là những trang kết quả được các bộ máy tìm kiếm (Google, Yahoo, Bing ..) trả về khi một ai đó thực hiện một truy vấn tới các bộ máy tìm kiếm này.

Thuật ngữ TRAFFIC Traffic là gì? Traffic là lượng truy cập vào trang web của bạn từ nhiều nguồn.

Thuật ngữ URL URL là gì? URL là viết tắt của Uniform Resource Locator được dùng để tham chiếu tới tài nguyên trên Internet, cụ thể là dùng để định nghĩa 1 website. Vd: http://yeuseo.com

Thuật ngữ UNIQUE VISITOR Unique Visitor là gì? Unique Visitor là chỉ số thể hiện số người truy cập duy nhất/không bị trùng lặp vào 1 website nào đó trong 1 khoảng thời gian.

Thuật ngữ USABILITY Usability là gì? Usability là thuật ngữ online marketing thể hiện sự tiện dụng, tính dễ sử dụng của website đối với người dùng.

Thuật ngữ PERMALINK Permalink là gì? Permalink là một địa chỉ URL của một bài viết cụ thể trên một website.

Thuật ngữ POST Post là gì? Post đồng nghĩa với “article”. Về cơ bản, một post là một article trong một website.

Thuật ngữ PPL PPL là gì? – Pay Per Lead; PPS là gì? – Pay Per Sale: tham khảo thuật ngữ CPA ở trên.

Thuật ngữ SEM SEM là gì? SEM – Search Engine Marketing là hình thức Marketing qua công cụ tìm kiếm, bao gồm Google Adwords và SEO

Thuật ngữ TRAFFIC Traffic là gì? Traffic là lượng truy cập vào trang web của bạn từ nhiều nguồn.

Tổng Hợp Thuật Ngữ Seo/Sem Từ A Đến Z Cập Nhật Mới Nhất

Trong bài viết này tổng hợp các thuật ngữ SEO/SEM mà Trần Ngọc Thùy nghĩ mỗi người làm SEO nên biết.

Thuật ngữ SEM – Search Engine Marketing

SEM (Search Engine Marketing) là hình thức làm marketing thông qua công cụ tìm kiếm, bao gồm Google Adwords và SEO(Search Engine Optimization).

I. Các thuật ngữ trong Google Adwords

3, Thuật ngữ CPA – Cost Per Action

4, Thuật ngữ CPM – Cost Per Mile (Thousand Impressions).

5, Thuật ngữ CPD – Cost Per Duration

II. Các thuật ngữ trong SEO

SEO- Search Engine Optimization là tối ưu hoá công cụ tìm kiếm. Tập hợp các phương pháp làm tăng tính thân thiện của Website đối với động cơ tìm kiếm với mục đích nâng thứ hạng của Website trong trang kết quả tìm kiếm theo một nhóm từ khoá mục tiêu nào đó.

Keywords là từ khóa, một cụm từ người dùng internet nhập vào các công cụ tìm kiếm để tìm kiếm thông tin. Ví dụ một website chuyên cung cấp các loại thiết bị nhà bếp thì các cụm từ như bếp từ, bếp điện từ, máy hút mùi ,… thường được chọn làm từ khóa.

2,Thuật ngữ inbound link ( Backlink)

Inbound link là một liên kết từ một trang web khác đến trang web của bạn, hay còn gọi là BackLink. Nếu bạn có nhiều Inbound link chất lượng thứ hạng website của bạn trên công cụ tìm kiếm chắc chắn sẽ được cải thiện.

3,Thuật ngữ internal link

Internal link là các liên kết từ trang này sang trang khác trên cùng một trang web, ví dụ như từ các bài viết tin tức của bạn đến trang sản phẩm, hoặc trang chủ của bạn. Xây dựng hệ thống Internal link tốt sẽ giúp website cải thiện thứ hạng trên google.

SEO Onpage như tối ưu hoá trang website, tối ưu bố cục chuẩn SEO, tối ưu tốc độ website nhằm phụ vụ để các search engine sẽ tìm đến website của bạn dễ dàng hơn.

Offpage SEO là xây dựng các liên kết đến website của bạn, quảng bá website ngoài trang của mình. Công việc off-page trong SEO cũng khá rộng nhưng chủ yếu là xây dựng backlink, trustrank…..

Anchor Text tạm dịch là ký tự liên kết là chuỗi các ký tự ẩn chứa đường dẫn tới một trang Web hay các tài nguyên khác.

7,Thuật ngữ Linkability

Linkability là thuật ngữ chỉ khả năng tiếp nhận các inbound link của một trang web.

Linkbait là một kỹ thuật seo, tạo backlink thông qua hình thức sáng tạo nội dung để thu hút lưu lượng truy cập và từ đó tạo backlinks về cho trang web của bạn.

9,Thuật ngữ Localized search

Localized search là dạng tìm kiếm theo địa phương, các kết quả tìm kiếm được hiển thị một cách cụ thể hóa, căn cứ trên vị trí địa lý của người tìm kiếm. Là một kiểu tìm kiếm được cá nhân hóa (personalized search).

10,Thuật ngữ Landing page

Link farm là thuật ngữ dùng để chỉ một website chứa rất nhiều các liên kết dẫn đến các website khác. Liên kết từ các trang loại này thường có chất lượng thấp và không có giá trị cải thiện thứ hạng công cụ tìm kiếm.

Analytics – Google Analytics: Là công cụ miễn phí của Google cho phép cài đặt trên website để theo dõi các thông số về website, về người truy cập vào website đó.

14, Thuật ngữ Canonical URL

Canonical URL (rel=canonical) là URL mà các webmasters muốn search engine xem như là địa chỉ chính thức của 1 webpage. Canonical URL dùng để ngăn chặn trùng lặp nội dung trong website.

17, Thuật ngữ CSS, Stylesheet

CSS là viết tắt của Cascading Style Sheets. Trình bày văn bản bằng ngôn ngữ HTML, thường được sử dụng để định dạng các thuộc tính trên trang web. Ví dụ: bố cục trang, màu sắc và font chữ,… thường được thiết lập sẵn trong file này website được đồng bộ và tạo nên sự chuyên nghiệp.

Domain hay còn gọi là tên miền, là định danh của website trên Internet, là địa chỉ web chính của trang của bạn (ví dụ: https://tranngocthuy.com). Tên miền thường gắn kèm với tên công ty và thương hiệu của doanh nghiệp. Tên miền là duy nhất và được cấp phát cho chủ thể nào đăng ký trước.

19, Thuật ngữ Forum seeding

HTML là viết tắt của Hypertext Markup Language, một ngôn ngữ được sử dụng để viết các trang web. Hầu hết các yếu tố HTML được viết bắt đầu bằng một thẻ mởvà kết thúc bằng một thẻ đóng, với nội dung ở giữa.

Index là quá trình mà công cụ tìm kiếm tìm thấy nội dung của bạn và sau đó lưu trữ và hiển thị nó trong kết quả tìm kiếm để trả về cho người dùng. Để kiểm tra xem website của bạn đã được index hay chưa, bạn chỉ cần vào Google và gõ vào tên miền của website mình, để xem bao nhiêu trang của website mình được index bạn gõ vào như sau: “site:thuycuong.net”. Thay chúng tôi bằng tên miền của bạn.

Meta Keywords là một yếu tố phổ biến và nổi tiếng nhất trong lịch sử của các công cụ tìm kiếm, nó được dùng để mô tả nội dung của một trang web. Tuy nhiên, các công cụ tìm kiếm nhanh chóng nhận ra rằng thẻ meta keywords này thường không chính xác hoặc gây hiểu lầm và thường xuyên dẫn đến các trang web rác. Đó là lý do tại sao thẻ meta keywords không còn được các công cụ tìm kiếm đánh giá cao.

Meta Title hay còn gọi là thẻ tiêu đề. Tiêu đề là dòng text hiển thị đầu tiên của trang web và được in đậm trên kết quả tìm kiếm của các công cụ tìm kiếm.(không quá 70 ký tự).

Meta Tags là một thuật ngữ toàn diện bao gồm các thẻ tiêu đề (Title), thẻ mô tả (Description) và thẻ từ khóa (Keyword). Ba thẻ này gộp lại với nhau gọi là các thẻ meta (meta tag). Các thẻ meta cung cấp thông tin về một trang web, giúp công cụ tìm kiếm phân loại chúng một cách chính xác.

Thuật ngữ chỉ sự tăng dần theo thời gian số lượng các liên kết hỏng trong mạng lưới hoặc trong từng trang web riêng lẻ. Còn gọi là linkrot (viết liền). (http://en.wikipedia.org/wiki/Link_rot)

PageRank hay Ranking viết tắt là PR tạm dịch là thứ hạng trang. Là một hệ thống đánh giá các liên kết trang Web của Google và có giá trị từ 0-10. Trang của bạn càng nhận nhiều liên kết chất lượng trỏ đến thì mức độ quan trọng trang của bạn càng tăng và có giá trị cao hơn.

Post là gì? Post đồng nghĩa với “article”. Về cơ bản, một post là một article trong một website.

31, Thuật ngữ Ranhking Factor

Ranking Factor là những yếu tố để các công cụ tìm kiếm xếp hạng một trang nào đó, chẳng hạn như số lượng các liên kết (backlink), hoặc các nội dung, các thẻ meta tags trên trang đó…

Redirect được sử dụng để xác định một địa chỉ URL thay thế và để chuyển hướng người sử dụng (hoặc công cụ tìm kiếm) đến một địa chỉ khác. Trong SEO có 2 loại redirect là 301 và 302. Tương tự với redirect 301 ở trên cùng, nhưng redirect 302 có nghĩa là chuyển hướng tạm thời.

Sitemap (sơ đồ website) là file/trang liệt kê tất cả các mục thông tin trên trang web của bạn cùng sự mô tả ngắn gọn cho các mục thông tin đó. Site map nên được sử dụng dễ dàng trong việc thực hiện tìm kiếm nhanh để tìm ra thông tin cần thiết cũng như trong việc di chuyển thông qua các đường link trên website của bạn. Site map rất hữu hiệu cho các bot của các Search Engine lùng sục trong site của bạn để lập chỉ mục (index), có lợi cho SEO.

SERP được viết tắt dựa trên cụm từ Search Engine Results Page, tạm dịch là những trang kết quả được các bộ máy tìm kiếm (Google, Yahoo, Bing ..) trả về khi một ai đó thực hiện một truy vấn tới các bộ máy tìm kiếm này.

36, Thuật ngữ Social Media/Marketing

Social Media hay Social Marketing là hình thức marketing thông qua các mạng xã hội, ứng dụng mạng xã hội vào việc làm marketing.

Tag là những từ khóa bạn dùng tựa như nhãn tên để mô tả hoặc tập hợp các bài blog. Thêm tag vào bài viết giúp cho bạn đọc dễ dàng tìm được bài viết cần tìm thông qua từ khóa chính. Điều đó mang lại sự tương tác cao giữa thông tin và người đọc và giúp họ có thể chọn lựa thông tin trước khi đọc. Hơn thế nữa, tag giúp diễn đàn, blog, website có hạng cao trên google thông qua những từ khóa nhất định.

38, Thuật ngữ Traffic Rank

39, Thuật ngữ XML Sitemap

Người viết bài cho blog được gọi là một blogger, và hành động viết blog được biết đến với tên là blogging. Google cũng có một website về blogging được gọi là Blogspot hay “blogger”.

Blogroll đôi khi được viết là blog-roll, đây là một danh sách mà blogger liên kết đến những blog khác để đọc hoặc hỗ trợ trao đổi link.

42, Thuật ngữ CMS, PLATFORM

CMS là viết tắt của hệ thống quản lý nội dung ( content management system). Nó là một chương trình phần mềm cho phép bạn thêm nội dung vào một trang web dễ dàng hơn. Ví dụ như Joomla, WordPress…

III. Các thuật toán thường gặp của Google

1, Thuật toán Google Panda:

2, Thuật toán Google Penguin:

Google Penguin là một thuật toán của Google nhằm mục đích giảm các thứ hạng website vi phạm tiêu chuẩn cộng đồng hay quy định quản trị web đó là tạo ra các link liên kết (backlink) một cách nhanh, không chất lượng với số lượng lớn…

3, Thuật toán Google Sandbox:

Theo nhiều tài liệu Đào tạo SEO hay các chuyên gia làm dịch vụ SEO, Google Sandbox được hiểu đơn giản là một công cụ “quản lý” các website mới thành lập mà đã có thứ hạng cao qua các hình thức SEO mũ đen sử dụng các phương pháp vi phạm các thuật toán của Google nhằm thao túng các kết quả tìm kiếm trên Google.

4, Thuật toán Hummingbird

Hummingbird – Thuật toán Google đưa ra vào giữa năm 2013 với hy vọng mang lại sự nhanh chóng – chính xác trong cách hoạt động của công cụ tìm kiếm Google…

Các bạn có thắc mắc xin vui lòng liên hệ với chúng tôi.

Những Thuật Ngữ Cơ Bản Dùng Trong Edm (P2)

DJ là gì? Producer là gì ?

Khi bạn nghe những cụm từ này lại nhầm tưởng đó là khái niệm mang chung một ý nghĩa, nhưng sự thật là đó là những khái niệm mang ý nghĩa khác nhau .

Vậy sự khác nhau giữ DJ và Producer đó là gì ? Ai sẽ là DJ và ai sẽ là Producer.Đối với những fan hâm mô của dòng nhạc EDM thì đây là một khái niệm vô cung quen thuộc. DJ là từ viết tắt của cụm Disc Jockey được hiểu là người điều chỉnh nhạc, là người chơi và phối các bản nhạc lại với nhau.

Những kĩ thuật về effect,loop hay một kĩ thuật nào trên công cụ điện tử để thay đổi âm thanh, nhịp điệu tiết tấu, cấu trúc của một bản nhạc. Nhưng họ không phải người tạo ra các bản nhạc mà chỉ là người chơi nhạc ở các buổi tiệc, lễ hội.

Producer là nhà sản xuất nhạc là người tạo ra các bản nhạc để cho DJ phối ở các lễ hội âm nhạc. Họ tạo ra các bản nhạc gốc của mình ( Original mix) và sau đó thì được các nhà sản xuất khác đem đi remix, dĩ nhiên trước đó phải xin được bản quyền remix chính thức hoặc là các bản phối bootleg- không chính thức và các bản phối mashup ( cắt ghép lại những phần không giống nhau từ 2 track trở lên).

Khi track nhạc đã được hoàn thành thì những nhà sản xuất sẽ gửi nó đến hãng thu âm sau đó phát hành trên toàn thế giới. Hiện nay trên toàn thế giới những DJ nổi tiếng trước đó họ cũng từng là những Producer hoặc ngược lại. Nhiều khi do sự chuyển giao đó mà người ta thường lầm tưởng hai khái niệm này ở hai phạm trù khác nhau.

Khái niệm về chữ viết tắt “ID”?

Những set nhạc của những DJ hàng đầu thế giới đôi khi người ta thường thấy chứ ID bí ẩn. Nhiều người vẫn thắc mắc không hiểu tại sao cụm từ viết tắt này lại xuất hiện( đôi khi nó đứng ở vị trí ca khúc,khi thì xuất hiện ở phần tên nghệ sĩ).

ID là chứ viết tắt của từ Identification, khi ID đứng ở vị trí thay thế nào thì đó là một con số bí ẩn. Nếu đứng ở vị trí tên bài hát thì có nghĩa đó là một sản phẩm trong giai đoạn cần hoàn thiện và chưa có tên. Hoặc có thể là do tác giả chưa muốn công bố để fan hâm mộ tò mò. Và những lý do khác khi ID đứng ở các vị trí như tên tác giả hay là cả hai cũng vậy. Những lý do đó chủ yếu là thăm dò những phản ứng của khán giả trước khi một bản phối hay một DJ ra mắt thị trường

Những thuật ngữ cơ bản khác

Teaser

Đây là một đoạn nhá hàng các ca khúc hay một lễ hội âm nhạc nào đó sắp được diễn ra, Với độ dài có thể từ 5′ trở lại. Đoạn teaser tập hợp những phần hay nhất hấp dẫn nhất của bản phối để thu hút sự tò mò của người chúng tôi Là một bản nhạc dài mà các DJ ghép nối pha trộn các track khác nhau lại để tạo thành.

Những DJ tài năng là người rất nhạy bén vì họ ghép nối các track rất trơn tru làm người nghe không biết được track được chuyển qua khi nào và bao giờ hết một trackThuật ngữ Podcast hay là Mixtape: đây là những bản mix có độ dài khoảng 30′ trở lên và thường xuất hiện tron các Radio show của các DJ hay là Producer. Khi các hãng thu âm phát hành để bắt đầu giới thiệu ca khúc sắp tung ra thị trường hay là chỉ để phục vụ mọi người thưởng thức.

Remix (bản phối chính thức)

Bản phối lại theo phóng cách mới khác với original mix của một track. Khi các bản remix đã nhận được sự đồng ý về bản quyền từ tác giả từ đó sẽ được phát hành và thu âm chính thức.

Vocal Mix

Có thêm lời hát của ca sĩ trong một track

Instrumental Mix

Đây là bản đã được tách đi phần lời, chỉ còn phần nhạc cụ và âm thanh mà DJ chơi.

Tất Cả Về Function

23 tháng 04, 2018 – 6870 lượt xem

Mọi thứ bạn cần biết về Function – Javascript

Đệ quy

 Function là gì?

Function (hàm, chức năng), gọi chung là subprogram (chương trình con) có thể được gọi ở bên ngoài hoặc bên trong chính nó.

Nó bao gồm tập hợp các câu lệnh gọi là function body. Các giá trị có thể truyền đến một hàm, và một hàm có thể trả về giá trị. 

Bây giờ, với các ứng dụng hiện đại, các function có thể là một chương trình hoàn chỉnh, chứ không phải là khái niệm tổng quát như ”subprogram” nữa.

Có sự khác nhau giữa function và procedure (thủ tục) rằng sự lý tưởng của function nên trả về một giá trị còn procedure thì không ( bây giờ điều này có thể thay đổi theo ngôn ngữ lập trình).

Với tất cả mọi điều hãy viết một “function” in ra chữ “hello” ở console.

Function không có tham số và không trả về bất cứ giá trị gì.  

function sayHello () { console.log("Hello !"); }

Function ở trên không có một tham số nào, và không trả về một giá tri.

sayHello();

Hiện tại, bạn thích thì có thể sử dụng dấu chấm phẩy (;) hoặc có thể chọn bỏ qua nó (chúng tôi không tham gia vào cuộc tranh luận về việc sử dụng dấu “;”  hoặc không dùng trong JavaScript).

Output của đoạn mã trên sẽ được in ra ở màn hình console như sau:

Nếu bạn sử dụng chuẩn es6/es2015 cùng một chức năng các bạn có thể sử dụng arrow function:

console.log("Hello !"); }

Sử dụng arrow function là một cách viết ngắn gọn để viết một function. Nó được gọi tương tự như trên:

sayHello();

Một arrow function có cú pháp ngắn hơn cú pháp function bình thường, nó có thể không có đối số, super hoặc new.target của nó.

Những function này phù hợp nhất cho các non-method function và chúng không thể sử dụng như các constructor.

Có điều gì khi tôi nói, function ở trên không trả về giá trị gì?

Nếu tôi cố gắng để lưu trữ kết quả của function được gọi ở trên vào một biến  nó sẽ nhận giá trị “undefined”.

Ví dụ:

let message = sayHello(); console.log (message);

Function có tham số nhưng không trả về giá trị nào

function log (message) { chúng tôi (message); }

Function ở trên có một tham số có tên là message và câu lệnh in ra giá trị của message trên màn hình console.

Bạn có thể gọi function ở trên như sau:  

log ("Hello JavaScript!");

Nếu function không return bất cứ một giá trị nào một cách rõ ràng, thì mặc định khi gọi hàm sẽ trả về “undefined”

 Function có một tham số và trả về một giá trị cụ thể

Chúng ta cùng viết một function có một tham số tên là number và trả về bình phương của số đó như sau:

function square(number) { return number * number; } console.log(square(2));

Các function là first-class-objects

Trong khoa học máy tính, một ngôn ngữ lập trình hỗ trợ các function có dạng first-class objects,. Cụ thể , điều này có nghĩa là ngôn ngữ đó hỗ trợ việc xây dựng mới các function trong quá trình thực thi chương trình, lưu trữ chúng trong cấu trúc dữ liệu, truyền chúng như là đối số cho các function khác, và trả về chúng như là các giá trị của function khác – theo wikipedia

Các Function là first-class objects có thể được gán cho một biến cũng có thể được truyền như một tham số. Chúng ta sẽ thấy điều này qua một ví dụ:

const square = function (number) { return number * number; } console.log(square(2));

Viết lại function phía trên sử dụng arrow function.

return number * number; } console.log(square(2));

 Function có thể có nhiều đối số (thực tế có thể có ‘n’ đối số)

Trên lý thuyết không có giới hạn đối số, nhưng thực tế thì có.

 Stackoverflow: javascript functions, maximum no. of arguments

Làm thế nào để viết một function có thể truyền vào ’n’ đối số?

Viết một function có tên là sum() có thể truyền ‘n’ đối số và trả về tổng của các đối đã truyền đó

const sum = function () { let result = 0; for(let i = 0; i < arguments.length; i++) { result += arguments[i]; } return result; }

console.log(sum(1,2)); console.log(sum(1,2,3,4)); console.log(sum(1,3,5,7,9));

Nó hoạt động như thế nào?

Nếu bạn nhìn vào function sum, nó không cần một tham số rõ ràng nào. Bây giờ, hãy tưởng tượng bạn đang thực hiện function sum() này một cách rõ ràng, điều gì là khó khăn để xác định các tham số trước đó. Nếu bạn không biết hãy nhìn các kết quả khi gọi function sum().

Nếu truyền vào 1 tham số tương ứng như sum(1) nó sẽ trả về 1.

Nếu truyền vào 2 tham số tương ứng như sum(1,2) nó sẽ trả về 3.

Nếu truyền vào 100 tham số tương ứng như sum(1,2,3,4..,99,100) nó sẽ trả về 5050.

Vì vậy, JavaScript đã cung cấp một object bí mật là “arguments”, nó chứa toàn bộ tham số và có thể sử dụng trong bất kỳ function nào.

Lưu ý, object “arguments” không phải là một Array mà là một Array like object. Có nghĩa là bạn không thể gọi bất kỳ phương thức áp dụng cho mảng trên đối tượng arguments (Nếu bạn tò mò, hãy nghiên cứu thêm về vấn đề này).

Hình ảnh ở trên minh họa rất rõ ràng rằng các đối số là một đối tượng tương ứng với các key là các value là các tham số được truyền vào.

Object này cũng giống như bất kỳ các đối tượng khác, ví dụ:

{ name: "Rajesh", hobbies: ["writing","programming"] } Các key ở đối tượng argument giống như index của một mảng { 0: "rajesh", 1: ["writing","programming"] } cả hai đều là đối tượng

Chú ý: JavaScript hiện đại không khuyến khích sử dụng đối tượng “arguments” . Chúng ta sử dụng một khái niệm mới gọi là REST parameters

Hãy xem cách sử dụng REST parameters để đạt được kết quả như trên mà không cần sử dụng đối tượng arguments:

const sum = function (...args) { let result = 0; for(let i = 0; i < args.length; i++) { result += args[i]; } return result; }

 Trong cả hai function, mọi thứ đều giống nhau ngoại trừ đối tượng “arguments” được thay thế bằng “REST parameters”(…args). Bây giờ bạn có thể gọi nó là bất cứ thứ gì, như một quy ước ở đây tôi gọi nó là “args”.

…args làm cái gì?

…args lấy mọi tham số truyền vào cho function và làm cho nó tồn tại dưới một mảng. Hãy nhớ rằng arguments là một đối tượng (array like object) còn …args là một mảng.

const sum = function (...args) { console.log(args); let result = 0; return current + prev; }); return result; } sum(1,2,3,4,5);

Output khi gọi hàm sum() cùng với console.log được hiển thị bên dưới

Trong đoạn log ở trên vì args là một mảng, và vì là một mảng nên chúng ta có thể sử dụng phương thức reduce để tính tổng.

…args cũng sử dụng được một phần trong nhiều tham số truyền vào

 Bây giờ chúng ta sẽ gọi hàm sum() với 3 tham số sum(1,2,3) và output nhận được là:

Function lấy function như một tham số

Như chúng ta đã đề cập trước đó function là first-class object do đó chúng có thể được truyền như là tham số/ đối số trong một hàm.

Chúng ta sẽ viết một function truyền vào đó một tham số là function

function dispatch (fn) { fn(); }

Trong đoạn mã phía trên, chúng ta định nghĩa một hàm tên là dispatch để nhận một hàm làm tham số truyền vào. Lưu ý rằng tên “fn” chỉ là một quy ước, bạn có thể sử dụng nhiều tên khác. Tên thông dụng khác thường là callback nhưng được sử dụng trong một ngữ cảnh khác.

NOTE: chúng tôi sử dụng thuật ngữ “callback” khi chúng tôi đề cập đến những function có tham số là function

Bây giờ, làm thế nào để sử dụng các function trên?

dispatch(fn); dispatch (function () { console.log("Hello !"); });

 Chú ý: 3 cách trên đều tương tự nhau

function dispatch(fn) { return fn("hello"); }

Function dispatch ở trên có đối số là một function và trả về giá trị trả về từ hàm được truyền vào. Nó cũng được gọi là hàm truyền vào với đối số là một function.

Làm thế nào để gọi hàm này?

let result = dispatch(function (p1) { return `My message and ${p1}`; });

Hãy nghĩ về điều này một chút.

Ứng dụng thực tế của callback function

Giả sử chúng ta thực hiện một số method sau khoảng 1 giây và không phải là ngay lập tức. Ở đây chúng ta có thể sử dụng ham setTimeout.

setTimeout(function () { console.log('kiểm tra trạng thái của vài server'); }, 1000);

Phương thức trên sẽ đợi tối thiểu 1 giây trước khi thực thi. Chú ý rằng thời gian ở setTimeout và setInterval tính theo mili giây.

Nếu bạn muốn thực hiện mỗi method sau mỗi khoảng thời gian là 5 giây, bạn có thể dùng hàm setInterval.

console.log("Mỗi 5s sẽ in ra nội dung này"); }, 5000);

Trong các hàm này bạn có thể viết bất kỳ đoạn mã nào, có thể thực hiện một số cuộc goi Ajax.

Chú ý: Tôi đang sử dụng cả hai cách viết là function bình thường và arrow function để kết thúc bài đọc, họ cảm thấy thoải mái với hai cách viết này

Function có thể gọi chính nó (giống như đệ quy) 

Đệ quy là một khái niệm thú vị trong đó một hàm gọi chính nó. Bây giờ nếu bạn không xử lý điều kiện dừng đệ quy, function có thể chạy vô hạn và cuối cùng trình duyệt có thể ném ra ngoại lệ tràn call stack như 'Maximum call stack size exceeded'. 

Hãy xem một ví dụ:

function runForEver() { runForEver(); } runForEver();

Hàm trên là một biểu diễn đơn giản của hàm đệ quy. Như tên function cho thấy, chức năng này sẽ chạy mãi mãi, cho đến khi lỗi trên được trình duyệt đưa ra.

OK, đó là một function khá vô dụng.

Bây giờ hãy viết một hàm hữu ích hơn:

function countDown(n) { chúng tôi (n); countDown(n-1); } }

Function đệ quy hoạt động như thế nào?

Từ sơ đồ trên, rất rõ ràng các cuộc gọi đệ quy tạo ra một ngăn xếp như thế nào và trong trường hợp chúng ta quên đặt điều kiện để kết thúc thì stack sẽ phát triển vô hạn và cuối cùng bạn sẽ thấy lỗi “Maximum call stack size exceeded”.

Hãy để chúng tôi xây dựng một ví dụ thực tế hơn. Giả sử bạn có cấu trúc dữ liệu bên dưới.

let data = [ { title: "menu 1", children :[ { title: "menu 1.1"}, { title: "menu 1.2", children: [ {title: "menu 1.2.1"}, {title: "menu 1.2.2"}, ] }, ] }, { title: "menu 2", children :[ { title: "menu 2.1"}, { title: "menu 2.2"}, ] } ]

Ở trên, chúng tôi có một cấu trúc phân cấp, có thể đại diện cho một menu hoặc bất cứ điều gì bạn muốn.

Chúng tôi muốn lấy điều này làm đầu vào và tạo danh sách không theo thứ tự với cấu trúc phân cấp chính xác.

Đầu tiên, hãy xem chúng ta định sử dụng function như thế nào.

let uls = buildTree(data); console.log(uls); document.write(uls);

Bây giờ chúng ta hãy thực hiện function buildTree.

function buildTree(data, isChild = false) { if (d.children) { html += buildTree(d.children, true); } }); return html; }

Còn tiếp...

Bài viết được dịch từ codeburst.io

Đăng ký thực tập Web front-end tại:  http://bit.ly/2GTgkky

Bạn đang đọc nội dung bài viết Tất Cả Thuật Ngữ Về Seo/Sem (P2) trên website Sieuphampanorama.com. Hy vọng một phần nào đó những thông tin mà chúng tôi đã cung cấp là rất hữu ích với bạn. Nếu nội dung bài viết hay, ý nghĩa bạn hãy chia sẻ với bạn bè của mình và luôn theo dõi, ủng hộ chúng tôi để cập nhật những thông tin mới nhất. Chúc bạn một ngày tốt lành!