国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

外貿(mào)流程詢盤發(fā)盤seo168小視頻

外貿(mào)流程詢盤發(fā)盤,seo168小視頻,設(shè)計(jì)制作生態(tài)瓶教學(xué)視頻,網(wǎng)站簡歷上篇我們學(xué)習(xí)了,一些基礎(chǔ)語法和函數(shù),現(xiàn)在我們學(xué)習(xí)下篇,主要包括,對象和事件。而對象又包括,數(shù)組Arrays,String字符串,BOM,DOM等 JS對象 Arrays數(shù)組 數(shù)組是一種特殊的對象,用于存儲…

? ? ? ? 上篇我們學(xué)習(xí)了,一些基礎(chǔ)語法和函數(shù),現(xiàn)在我們學(xué)習(xí)下篇,主要包括,對象和事件。而對象又包括,數(shù)組Arrays,String字符串,BOM,DOM等

JS對象

Arrays數(shù)組

????????數(shù)組是一種特殊的對象,用于存儲有序的值集合。了解數(shù)組的創(chuàng)建方式、遍歷方式、屬性和方法是掌握J(rèn)avaScript的重要部分。以下是關(guān)于JavaScript數(shù)組的詳細(xì)介紹。

數(shù)組的創(chuàng)建

JavaScript中可以使用多種方式創(chuàng)建數(shù)組,最常見的方法有:

  1. 數(shù)組字面量: 這是創(chuàng)建數(shù)組的最簡單和推薦的方式。通過中括號[]可以直接初始化數(shù)組。

const fruits = ['蘋果', '香蕉', '橘子'];

2.?Array構(gòu)造函數(shù): 可以使用new Array()構(gòu)造函數(shù)來創(chuàng)建數(shù)組,雖然不推薦這種方法,但它仍然有效。

const fruits = new Array('蘋果', '香蕉', '橘子');

?注意,如果只傳入一個(gè)數(shù)字作為參數(shù),則會創(chuàng)建一個(gè)指定長度的空數(shù)組。

const arrayLength = new Array(5); // 創(chuàng)建一個(gè)長度為5的空數(shù)組

3.?使用Array.of():?Array.of()方法可以創(chuàng)建一個(gè)新的數(shù)組實(shí)例,其參數(shù)是數(shù)組的元素。

const numbers = Array.of(1, 2, 3, 4, 5);
數(shù)組的遍歷方式

遍歷有好幾種方法,我這里介紹常用的兩種。

  1. for循環(huán): 使用經(jīng)典的for循環(huán)可以通過索引遍歷數(shù)組。

const fruits = ['蘋果', '香蕉', '橘子'];
for (let i = 0; i < fruits.length; i++) {console.log(fruits[i]);
}

?2.forEach()方法:?forEach()是一個(gè)數(shù)組方法,可以對數(shù)組中的每個(gè)元素執(zhí)行提供的函數(shù)。

fruits.forEach(function(fruit) {console.log(fruit);
});
數(shù)組的屬性和方法?

????????作為后端開發(fā)者,我們不需要了解那么多方法和屬性,簡單了解即可,這里只介紹常用的屬性和方法

?

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>JS 對象-Arrays</title>
</head>
<body><script>//創(chuàng)建數(shù)組var arr = new Array(1, 2, 3, 4, 5);for (let i = 0; i < array.length; i++) {console.log(array[i]); }var arr = [1, 2, 3, 4, 5];arr[10] = 50; //即使沒有10這個(gè)索引,也不會報(bào)錯,因?yàn)殚L度可以動態(tài)變化//訪問數(shù)組元素console.log(arr[0]); //1console.log(arr[1]); //2console.log(arr[10]);//50log(arr[9]); //沒有定義的索引元素是undefined//數(shù)組可以存儲不同類型的值arr[8] = "hello";//為8索引位置添加字符串元素/* JS 中的數(shù)組與Java中的集合類似,可以存儲不同類型的數(shù)據(jù),可以動態(tài)添加和刪除元素,可以對數(shù)組進(jìn)行排序等操作。 *///數(shù)組的遍歷for (let i = 0; i < arr.length; i++) {console.log(arr[i]); //1 2 3 4 5 hello}//forEach方法  arr.forEach(function(e) {console.log(e); //1 2 3 4 5 hello});/* forEach方法可以對數(shù)組中的每一個(gè)元素進(jìn)行操作, 如果是undefined,會跳過不會打印。for循環(huán)會遍歷所有元素,包括undefined。*///forEach方法,ES6引入了箭頭函數(shù),和Java中l(wèi)ambda表達(dá)式類似,可以簡化代碼。arr.forEach(e => console.log(e)); //1 2 3 4 5 hello//數(shù)組的屬性和方法arr.push(6,7,8); //在數(shù)組末尾添加元素arr.splice(2, 2); //在索引為2的位置開始刪除2個(gè)元素arr.pop(); //刪除數(shù)組末尾的元素arr.shift(); //刪除數(shù)組第一個(gè)元素arr.unshift(0); //在數(shù)組開頭添加元素arr.sort(); //對數(shù)組進(jìn)行排序arr.reverse(); //對數(shù)組進(jìn)行反轉(zhuǎn)arr.join("-"); //將數(shù)組元素用-連接成字符串a(chǎn)rr.slice(1, 4); //從索引1到索引3的元素組成一個(gè)新數(shù)組arr.map(function(e) {return e * 2; //對數(shù)組元素進(jìn)行映射}); //返回一個(gè)新數(shù)組,元素是原數(shù)組元素的兩倍arr.filter(function(e) {return e > 3; //返回一個(gè)新數(shù)組,元素是原數(shù)組元素大于3的元素}); //返回一個(gè)新數(shù)組,元素是原數(shù)組元素大于3的元素arr.reduce(function(pre, cur) {return pre + cur; //對數(shù)組元素進(jìn)行求和}); //返回一個(gè)值,是數(shù)組元素的求和arr.indexOf(3); //返回元素3的索引,如果不存在返回-1arr.lastIndexOf(3); //返回元素3的最后一個(gè)索引,如果不存在返回-1arr.includes(3); //判斷元素3是否存在,存在返回true,不存在返回false</script></body>
</html>

String字符串

字符串創(chuàng)建

在JavaScript中,可以通過多種方式創(chuàng)建字符串:

1.使用字符串字面量: 最常見的方式是使用單引號'或雙引號"括起來的字符。

var str1 = "Hello, world!";
var str2 = 'Hello, world!';

2.使用String構(gòu)造函數(shù): 使用new String()來創(chuàng)建字符串對象,盡管這種方式不常用,因?yàn)樗鼤梢粋€(gè)字符串對象,而不是一個(gè)簡單的字符串。

var str3 = new String("Hello, world!");

注意:使用構(gòu)造函數(shù)創(chuàng)建的字符串對象和字面量字符串在某些情況下表現(xiàn)會不同,因此一般推薦使用字面量。

字符串的屬性
  1. length: 字符串的length屬性返回字符串中的字符數(shù),包括空格和標(biāo)點(diǎn)符號。
console.log(str1.length); // 輸出 13
字符串的方法

????????JavaScript中的字符串對象提供了許多有用的方法,有Java基礎(chǔ)的同學(xué)會覺得非常簡單,因?yàn)榇蟛糠址椒ǘ际且幻粯印R韵率且恍┏S玫姆椒?#xff1a;

1.indexOf(): 返回指定字符或子字符串在字符串中第一次出現(xiàn)的位置,未找到則返回-1。

console.log(str1.indexOf("o")); // 輸出 4

2.charAt(): 返回字符串中指定位置的字符。

console.log(str1.charAt(0)); // 輸出 "H"

3.substring(): 返回字符串的一部分。第一個(gè)參數(shù)為開始索引,第二個(gè)參數(shù)為結(jié)束索引。

console.log(str1.substring(0, 5)); // 輸出 "Hello"

4.replace(): 替換字符串中匹配的部分,返回替換后的新字符串。

console.log(str1.replace("world", "JavaScript")); // 輸出 "Hello, JavaScript!"

5.trim(): 去掉字符串兩端的空格。

var str4 = "   Hello, world!   ";
console.log(str4.trim()); // 輸出 "Hello, world!"
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>JS對象-string</title>
</head>
<body><script>// 字符串創(chuàng)建var str1 = "hello string";var str2 = new String("hello string");//屬性console.log(str1.length); // 12console.log(str2.length); // 12//方法console.log(str1.toUpperCase()); // HELLO STRINGconsole.log(str2.toUpperCase()); // HELLO STRINGconsole.log(str1.toLowerCase()); // hello stringconsole.log(str2.toLowerCase()); // hello stringconsole.log(str1.indexOf("l")); // 2console.log(str2.indexOf("l")); // 2console.log(str1.lastIndexOf("l")); // 9console.log(str2.lastIndexOf("l")); // 9console.log(str1.charAt(2)); // lconsole.log(str2.charAt(2)); // lconsole.log(str1.substring(2, 5)); // lloconsole.log(str2.substring(2, 5)); // lloconsole.log(str1.slice(2, 5)); // lloconsole.log(str2.slice(2, 5)); // lloconsole.log(str1.replace("l", "L")); // heLLo stringconsole.log(str2.replace("l", "L")); // heLLo stringconsole.log(str1.trim()); // "hello string"console.log(str2.trim()); // "hello string"console.log(str1.split(" ")); // ["hello", "string"]console.log(str2.split(" ")); // ["hello", "string"]console.log(str1.concat(" world")); // "hello string world"console.log(str2.concat(" world")); // "hello string world"console.log(str1.localeCompare("hello")); // 1console.log(str2.localeCompare("hello")); // 1console.log(str1.match(/l/g)); // ["l", "l", "l", "l", "l", "l", "l", "l", "l", "l"]console.log(str2.match(/l/g)); // ["l", "l", "l"]console.log(str1.search("l")); // 2console.log(str2.search("l")); // 2console.log(str1.replace(/l/g, "L")); // heLLo stRingconsole.log(str2.replace(/l/g, "L")); // heLLo stRingconsole.log(str1.localeCompare("hello")); // 1console.log(str2.localeCompare("hello")); // 1console.log(str1.localeCompare("hello", "en", { sensitivity: "base" })); // 1console.log(str2.localeCompare("hello", "en", { sensitivity: "base" })); // 1console.log(str1.localeCompare("hello", "en", { sensitivity: "accent" })); // 1console.log(str2.localeCompare("hello", "en", { sensitivity: "accent" })); // 1console.log(str1.localeCompare("hello", "en", { sensitivity: "case" })); // 1console.log(str2.localeCompare("hello", "en", { sensitivity: "case" })); // 1</script></body>
</html>

JSON對象

自定義對象的創(chuàng)建

在 JavaScript 中,我們可以使用對象字面量的語法來創(chuàng)建自定義對象。以下是一個(gè)簡單的示例:

var person = {name: "John",age: 30,city: "New York",eat: function() {alert("干飯!");}
};

在這個(gè)示例中,我們創(chuàng)建了一個(gè)名為?person?的對象,它有三個(gè)屬性(name、age?和?city)以及一個(gè)方法(eat)。這個(gè)?eat?方法在被調(diào)用時(shí)會彈出一個(gè)消息框,顯示“干飯!”。

調(diào)用自定義對象的方法

我們可以通過對象的名稱加上點(diǎn)操作符來調(diào)用方法。例如,調(diào)用?eat?方法和輸出?name?屬性的值。

person.eat();            // 調(diào)用 eat 方法
alert(person.name);     // 輸出 name 屬性的值

這段代碼將彈出“干飯!”的提示框,并且接著顯示當(dāng)前對象的?name?屬性。?

JSON 對象定義

????????JSON 是一種輕量級的數(shù)據(jù)交換格式,它是基于 JavaScript 對象表示法的。我們可以將 JSON 看作是字符串形式的 JavaScript 對象。以下是兩種定義 JSON 對象的方式:

字符串形式的 JSON 對象

首先,我們可以使用字符串來定義 JSON 對象:

var jsonObj = '{"name": "John", "age": 30, "city": "New York"}'; // 字符串形式的 JSON 對象

這種方式使用了 JSON 格式的字符串,但這并不是一個(gè)真正的對象,而只是一個(gè)字符串

JavaScript 對象的表示

我們也可以直接使用 JavaScript 對象的形式來定義一個(gè) JSON 對象:

var jsonObj = {"name": "John","age": 30,"city": "New York"
};

?在這里,jsonObj?是一個(gè)有效的 JavaScript 對象。?

JSON 對象與字符串JSON對象的轉(zhuǎn)換

轉(zhuǎn)換為字符串形式的JSON

var jsonStr = JSON.stringify(jsonObj);

轉(zhuǎn)換為JSON對象

var newObj = JSON.parse(jsonStr);
兩者區(qū)別?

????????JSON(JavaScript Object Notation)是一種輕量級的數(shù)據(jù)交換格式,常用于在不同的編程語言之間傳輸和存儲數(shù)據(jù)。JSON有兩種基本形式:JSON對象和JSON字符串,這兩者之間存在顯著的區(qū)別。

  1. JSON對象:JSON對象是一個(gè)數(shù)據(jù)結(jié)構(gòu),可以通過“對象.屬性”的方式來訪問其值。在JavaScript中,JSON對象是一個(gè)鍵值對集合。JSON對象直接可以被程序使用,它是適合代碼處理的原始數(shù)據(jù)類型。

  2. JSON字符串:JSON字符串在存儲和傳輸數(shù)據(jù)時(shí)使用,它提供了一種將對象序列化為文本的方式,以便在網(wǎng)絡(luò)上傳輸或者存儲到文件中。

?BOM

????????BOM(瀏覽器對象模型)是JavaScript的一個(gè)重要組成部分,使得開發(fā)者能夠通過腳本控制瀏覽器窗口。與DOM(文檔對象模型)不同,BOM并不直接涉及HTML或CSS,而是與瀏覽器本身的行為及功能相關(guān)。

作為一個(gè)Java程序員,我們只需重點(diǎn)關(guān)注這兩個(gè),Window和Location

Window

 /* 重點(diǎn)了解 window 對象 和 Location 對象 *///獲取Window.alert("Hello BOM!");alert("Hello BOM!"); //方法confirm("你確定要刪除嗎?");//返回true或false//定時(shí)器var i =0;setInterval(function(){console.log("定時(shí)器執(zhí)行"+i);i++;},1000 //每隔1秒執(zhí)行一次  ); //周期性的執(zhí)行函數(shù)setTimeout(function(){alert("JS");},2000 //2秒后執(zhí)行一次      ); //延遲執(zhí)行函數(shù)
Location

 //Location對象//獲取當(dāng)前頁面的URLvar url = window.location.href;console.log(url);location.href = "https://www.baidu.com"; //跳轉(zhuǎn)到指定頁面

DOM

????????DOM是文檔對象模型的縮寫,它將整個(gè)HTML或XML文檔視為一個(gè)樹形結(jié)構(gòu)。每一個(gè)元素、屬性和文本都成為這個(gè)結(jié)構(gòu)中的一個(gè)節(jié)點(diǎn)。這樣,我們就能通過JavaScript來訪問和修改這些節(jié)點(diǎn),從而更新網(wǎng)頁的內(nèi)容和樣式,而不需要重新加載整個(gè)頁面。

獲取DOM元素

在JavaScript中,我們可以使用多種方法來獲取DOM元素。以下是一些常用的方法:

改變元素的內(nèi)容和樣式

例如,我們可以通過DOM改變某個(gè)元素的顏色和背景:

element.style.color = "red";
element.style.backgroundColor = "yellow";
訪問和修改元素的屬性

我們可以訪問元素的屬性,如復(fù)選框的狀態(tài):

var checkboxes = document.getElementsByName("my_hobby");
for (var i = 0; i < checkboxes.length; i++) {if (checkboxes[i].checked) {alert(checkboxes[i].value); // 顯示被選中的愛好}
}

????????DOM不僅是網(wǎng)頁的結(jié)構(gòu)框架,也是我們與網(wǎng)頁交互的重要通道。學(xué)習(xí)如何有效使用DOM可以幫助我們開發(fā)出更動態(tài)、互動豐富的網(wǎng)頁。?

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>JS對象-DOM</title>
</head>
<body><img src="../web_html/images/20240604hlag8k.webp" alt=""> <br><div id="bro_cat">Bro_cat</div><div class="001"> JS </div><div class="002"> DOM </div><input type="checkbox" name="my_hobby"> 電影<input type="checkbox" name="my_hobby"> 音樂<input type="checkbox" name="my_hobby"> 旅行<script>/* DOM 文檔對象模型 */// 獲取元素// 通過id獲取元素var bro_cat = document.getElementById("bro_cat");// 通過標(biāo)簽名獲取元素var dvs = document.getElementsByTagName("div");for (let i = 0; i < array.length; i++) {alert(dvs[i]);  }//通過name屬性獲取元素var hobby = document.getElementsByName("my_hobby");for (let i = 0; i < hobby.length; i++) {alert(hobby[i].value);}// 通過類名獲取元素var js = document.getElementsByClassName("001")[0];var dom = document.getElementsByClassName("002")[0];// 改變元素的樣式bro_cat.style.color = "red";js.style.backgroundColor = "yellow";dom.style.fontSize = "20px";// 獲取元素的屬性var input_hobby = document.getElementsByName("my_hobby");for (var i = 0; i < input_hobby.length; i++) {if (input_hobby[i].checked) {alert(input_hobby[i].value);}}</script></body>
</html>

事件

事件監(jiān)聽

事件綁定

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>JS事件</title>
</head>
<body><input type="button" id="btn1" value="按鈕1" onclick="on()"> <input type="button" id="btn2" value="按鈕2"><script>//事件綁定//通過標(biāo)簽屬性綁定事件function on() {console.log("按鈕1被點(diǎn)擊了");}//通過DOM對象綁定事件var btn2 = document.getElementById("btn2");btn2.onclick = function() {console.log("按鈕2被點(diǎn)擊了");}</script></body>
</html>
常見事件

總結(jié)

????????在現(xiàn)代前端開發(fā)中,JavaScript(JS)已經(jīng)成為了構(gòu)建動態(tài)網(wǎng)頁和應(yīng)用的重要工具。掌握其基本語法和概念是第一步,包括變量聲明、數(shù)據(jù)類型、控制結(jié)構(gòu)、函數(shù)和DOM操作等。隨著深入學(xué)習(xí),理解其原型繼承、閉包和異步編程的機(jī)制將有助于編寫出高效、可維護(hù)的代碼。

? ? ? ? 我寫的有很多東西都沒有涉及全面,想深入了解的可以參考下面官方手冊學(xué)習(xí)……

參考手冊

http://aloenet.com.cn/news/46273.html

相關(guān)文章:

  • 個(gè)人網(wǎng)站想添加支付功能怎么做seo優(yōu)
  • 陽江市建設(shè)路龍?jiān)磳W(xué)校網(wǎng)站網(wǎng)站優(yōu)化推廣seo公司
  • 新媒體營銷中常見的知識問答平臺有seo網(wǎng)站有哪些
  • 張家港企業(yè)網(wǎng)站設(shè)計(jì)現(xiàn)在學(xué)seo課程多少錢
  • 平頂山做網(wǎng)站品牌公關(guān)具體要做些什么
  • 平臺和網(wǎng)站有什么區(qū)別網(wǎng)絡(luò)營銷工資一般多少
  • 赤峰做網(wǎng)站公司百度地圖導(dǎo)航2021最新版
  • 哪些公司做網(wǎng)站開發(fā)百度163黃頁關(guān)鍵詞挖掘
  • 敦化網(wǎng)站建設(shè)哈爾濱最新今日頭條新聞
  • 移動互聯(lián)應(yīng)用技術(shù)微博搜索引擎優(yōu)化
  • 做網(wǎng)站幾個(gè)步驟seo外包優(yōu)化公司
  • 常州外貿(mào)網(wǎng)站建設(shè)我是新手如何做電商
  • 企業(yè)網(wǎng)站開發(fā)多少錢沈陽今天剛剛發(fā)生的新聞
  • 青島公司做網(wǎng)站鄭州seo顧問培訓(xùn)
  • 高端的鎮(zhèn)江網(wǎng)站建設(shè)運(yùn)營商大數(shù)據(jù)精準(zhǔn)營銷
  • 自己做網(wǎng)站教學(xué)視頻重慶整站seo
  • 無錫網(wǎng)站怎么做站內(nèi)seo和站外seo區(qū)別
  • 想做一個(gè)網(wǎng)站平臺怎么做的廣告推廣系統(tǒng)
  • 廣州市專業(yè)做商城網(wǎng)站百度認(rèn)證官網(wǎng)
  • 濟(jì)邦建設(shè)有限公司官方網(wǎng)站如何制作微信小程序
  • 長沙網(wǎng)站建設(shè)哪家好seo哪里有培訓(xùn)
  • 社科聯(lián)網(wǎng)站建設(shè)情況匯報(bào)重慶seo網(wǎng)絡(luò)優(yōu)化師
  • 網(wǎng)站建設(shè)工作室北京小俊哥簡單網(wǎng)站建設(shè)優(yōu)化推廣
  • 鄭州 公司網(wǎng)站制作百度愛采購?fù)茝V怎么入駐
  • 北京市中關(guān)村有哪家可以做網(wǎng)站維護(hù)重慶seo排名技術(shù)
  • 河源做網(wǎng)站優(yōu)化百度推廣營銷頁
  • wordpress 附件自定義南京百度快速排名優(yōu)化
  • 網(wǎng)站的制作蘇州網(wǎng)站seo服務(wù)
  • 設(shè)計(jì)師網(wǎng)絡(luò)語南京seo
  • 深圳本地做網(wǎng)站優(yōu)化師培訓(xùn)機(jī)構(gòu)