最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

貝拉,生日快樂## ps.JS零碎知識點20230714

2023-07-14 14:46 作者:Biehmltym  | 我要投稿

## ps.JS零碎知識點


## 1。? +=: x += y等效于 x = x + y

#### 加法賦值運算符??


```java

下面的示例演示 += 運算符的用法:


int i = 5;

i += 9;

Console.WriteLine(i);

// Output: 14


string story = "Start. ";

story += "End.";

Console.WriteLine(story);

// Output: Start. End.


Action printer = () => Console.Write("a");

printer();? // output: a


Console.WriteLine();

printer += () => Console.Write("b");

printer();? // output: ab

```



## 2。 i++ 與 ++i 的主要區(qū)別有兩個:


### 2.1、i++ 直接返回原來的值,++i 返回加1后的值。


### 2.2、i++ 不能作為左值,而++i 可以。

#### 一般來說,左值是可以放到賦值符號左邊的變量。


例如對于下面一個題目:


##### int a = 4; //分別執(zhí)行以下五種情況


##### (1) a += a++; //a=?


##### (2) a += ++a; //a=?


##### (3) ++a += a; //a=?


##### (4) ++a += a++; //a=?


##### (5) ++a += ++a; //a=?


相信很多人對這個問題都會頭大。沒辦法,兵來將擋,水來土掩,我們必須找個辦法來應(yīng)付此類題目。


大家都知道,

a++表示先返回a的值,然后再對a執(zhí)行+1操作,

++a表示先對a執(zhí)行+1操作,然后再返回a的值(此時a是加1后的值了)。

這樣單獨容易理解。但是再加上+=等操作符,可能就不會那么明朗了(如上題中的(3)、(4)、(5)小問)。


一個很好的記憶方法:


### 2.3前綴++a/--a優(yōu)先級大于所有數(shù)值運算符


### 2.4后綴a++/a--優(yōu)先級小于所有數(shù)值運算符


牢記這個,就不會出錯啦。例如對上面的例子:


(1) a += a++;


后綴++的優(yōu)先級小于+=的優(yōu)先級,因此先執(zhí)行a+=a的操作,得8,然后再執(zhí)行a++的操作,結(jié)果為9


(2) a += ++a;


前綴++的優(yōu)先級大于+=的優(yōu)先級,因此先執(zhí)行++a的操作,得5,然后再執(zhí)行a+=a的操作,結(jié)果為10


(3) ++a += a;


前綴++的優(yōu)先級大于+=的優(yōu)先級,因此先執(zhí)行++a的操作,得5,然后再執(zhí)行a+=a的操作,結(jié)果為10


(4) ++a += a++;


優(yōu)先級:前綴++ > += > 后綴++,先執(zhí)行++a得5,然后執(zhí)行a+=a得10,最后執(zhí)行a++得11


(5) ++a += ++a;


對于同時前綴的,順序是從左往右,因此先執(zhí)行左邊的++a得5,然后執(zhí)行右邊的++a得6,最后執(zhí)行a+=a得12



###? ps社長的題有點意思:

```javascript

? ? ? ? var y = 10 % 7;

? ? ? ? var x = y % 2;

? ? ? ? //y=3? x=1 ;

? ? ? ? alert(--y!= ++x );

? ? ? ? //y 2 x 2? ? flase

? ? ? ? alert(y);alert(x);


? ? ? ? alert(y-- ==x++ )//彈出 true

? ? ? ? // 2=2? y1? x3

? ? ? ? ?alert(y);alert(x);



?var y = 10 % 7;

? ? ? ? var x = y % 2;

? ? ? ? alert(--y!= ++x || y-- ==x++ );//false true 彈出 true


```


```javascript

<!DOCTYPE html>
<html lang="en">

<head>
? ?<meta charset="UTF-8">
? ?<script>
? ? ? ?var arr = document.getElementsByName("checkbox1");

? ? ? ?function checkAll() {
? ? ? ? ? ?for (var i = 0; i <
? ? ? ? ? ?arr.length;
? ? ? ? ? ? ? ? i++
? ? ? ? ? ?) {
? ? ? ? ? ? ? ?arr[i].checked = true;
? ? ? ? ? ?}
? ? ? ?}

? ? ? ?function cancelAll() {
? ? ? ? ? ?for (var i = 0; i < arr.length;
? ? ? ? ? ? ? ? i++
? ? ? ? ? ?) {
? ? ? ? ? ? ? ?arr[i].checked = false;
? ? ? ? ? ?}
? ? ? ?}

? ? ? ?function checkOdd() {
? ? ? ? ? ?for (var i = 0; i < arr.length; i++) {
? ? ? ? ? ? ? ?if ((i + 1) % 2 !== 0
? ? ? ? ? ? ? ?) {
? ? ? ? ? ? ? ? ? ?arr[i].checked = true;
? ? ? ? ? ? ? ?} else {
? ? ? ? ? ? ? ? ? ?arr[i].checked = false;
? ? ? ? ? ? ? ?}
? ? ? ? ? ?}
? ? ? ?}

? ?</script>
</head>
<body>

<input type="checkbox" name="checkbox1">選項1
<input type="checkbox" name="checkbox1">選項2
<input type="checkbox" name="checkbox1">選項3
<input type="checkbox" name="checkbox1">選項4
<input type="checkbox" name="checkbox1">選項5
<br/>
<input type="button" onclick="checkAll()" value="全選">
<input type="button" onclick="cancelAll()" value="全不選">
<input type="button" onclick="checkOdd()" value="選中奇數(shù)">


</body>


</html>


????????


```



### for循環(huán)

for 循環(huán)是一種常用的循環(huán)結(jié)構(gòu),用于重復(fù)執(zhí)行特定的代碼塊一定次數(shù)。它的基本語法如下:


```for (初始化; 條件; 迭代) {

? ? // 循環(huán)體

}


```


- 初始化:在循環(huán)開始前執(zhí)行的語句,用于設(shè)置循環(huán)的初始狀態(tài),通常用于定義循環(huán)變量的初始值。

- 條件:每次迭代前都會進(jìn)行判斷的表達(dá)式,如果條件為真,則繼續(xù)執(zhí)行循環(huán)體;如果條件為假,則跳出循環(huán)。

- 迭代:每次循環(huán)體執(zhí)行完后執(zhí)行的語句,用于更新循環(huán)變量的值。


```javascript

<script>

? ? var i=0;

? ? for (++i; i < 5; i++) {

? ? ? ? console.log(i); // 打印當(dāng)前循環(huán)變量的值

? ? }


</script>

```

0

1

2

3

4




### continue;


continue 是 JavaScript 中的一種控制流語句,用于跳過當(dāng)前循環(huán)中的剩余代碼并進(jìn)入下一次迭代。它通常用于循環(huán)語句中,如 for 循環(huán)或 while 循環(huán)。

當(dāng)程序執(zhí)行到 continue 語句時,會立即結(jié)束當(dāng)前循環(huán)的當(dāng)前迭代,并跳到下一次迭代開始的地方。換句話說,它會終止當(dāng)前迭代的剩余代碼,然后繼續(xù)執(zhí)行下一次迭代。

以下是一個示例,展示了 continue 語句的使用:



```javascript

for (var i = 0; i < 5; i++) {

? ? if (i === 2) {

? ? ? ? continue;

? ? }

? ? console.log(i);

}


```

上述代碼中,我們使用 for 循環(huán)打印了數(shù)字 0 到 4,但當(dāng) i 的值為 2 時,使用 continue 跳過了當(dāng)前迭代,所以數(shù)字 2 并未被輸出。輸出結(jié)果如下:


Copy code

0

1

3

4

``

在這個示例中,當(dāng) i 等于 2 時,continue 語句被執(zhí)行,導(dǎo)致剩余的代碼不被執(zhí)行,直接跳到下一次迭代。因此,數(shù)字 2 并未被打印出來。


需要注意的是,continue 只會跳過當(dāng)前循環(huán)的剩余代碼,不會終止整個循環(huán)。如果希望完全終止循環(huán)并跳出循環(huán)體,可以使用 break 語句。





```javascript


<script>

? ? var num = 10;

? ? for (var i = 0; i < num; i++) {

? ? ? ? if (i > 3 && i < 9) {

? ? ? ? ? ? alert(++i);

? ? ? ? } else {

? ? ? ? ? ? alert(i++);

? ? ? ? }

? ? ? ? i++;

? ? }


```

```

0

3

7

9


```

打印乘法表

```javascript

for (var j = 1; j < 10; j++) {

? ? ? ? var str = '';

? ? ? ? for (var k = 1; k < 10; k++) {

? ? ? ? ? ? str = str + k + '*' + j + '=' + k * j + ' ';

? ? ? ? }

? ? ? ? console.log(str);

? ? }

```



參數(shù) :

```html

<script>

? ? function func1(a){

? ? ? ? return "hello";

? ? }

? ? var aaa =func1(1);

? ? alert(aaa);

</script>

```

彈出

hello




- javscript函數(shù)的參數(shù)是可變長的,重名的函數(shù)會覆蓋之前的函數(shù)日

- 函數(shù)體中可以調(diào)用其它函數(shù),函數(shù)可以被無上限次調(diào)用,

- 有返回值的函數(shù),不使用變量接收也不會報錯

- 沒有返回值的函數(shù),使用變量接收不會報錯,但是默認(rèn)賦值undefined

- jayasgript不需要進(jìn)行參數(shù)和返回值類型的聲明,其它編程語言通常需要聲明

- 函數(shù)(函數(shù) かんすう)也稱為方法(メソード).method

- 有參數(shù)的函數(shù)原則上講,參數(shù)個數(shù)沒有上限

- return語句會中止有參函數(shù)的運行,如果希望無返回值函數(shù)結(jié)束運行,可以使用return;

- 傳入?yún)?shù)大小/小于定義參數(shù)個數(shù)時,程序不會報錯。

- 函數(shù)體中,傳入?yún)?shù)卻未使用的情況,程序不會報錯

- 參數(shù)個數(shù)不同的情況下,函數(shù)名可以重復(fù)。

- 函數(shù)體中可以調(diào)用其它函數(shù),函數(shù)可以被無上限次調(diào)用

-? JavaScript當(dāng)出現(xiàn)錯誤時,不會往下運行??

-? JavaScript函數(shù)傳入?yún)?shù)個數(shù)小于/大于定于函數(shù)參數(shù)個數(shù)時不報錯??


### ps 5 頁面控制事件

#### 1- onload事件(加載完成時操作)

? ? body

```javascript

? ? <!DOCTYPE html>

<html>

<head>

? ? <script>

? ? ? ? function doSthAfterLoad() {

? ? ? ? ? ? document.getElementById("name").value = "ana";

? ? ? ? }



? ? </script>

</head>

<body onload="doSthAfterLoad()">

<!--雖然doSthAfterLoad()寫在前面,但是使用onload,等所有body加載完成后,再執(zhí)行-->

<input type="text" id="name">


</body>


</html>

```

#### 2- onchange事件(改變)

######? ? ?普通文本框(text)

######? ? ?下拉框(select)

######? ? ?單選按鈕(radio)

######? ? ?復(fù)選按鈕(checkbox)

```javascript

<!DOCTYPE html>

<html>


<head>

? ? <meta charset="UTF-8">

? ? <script>

? ? ? ? function onChangeName() {

? ? ? ? ? ? alert(123);

? ? ? ? }


? ? </script>

</head>

<body>

<input type="text" id="name" onchange="onChangeName();">


<select id="province" onchange="onChangeName()">

? ? <option>四川省</option>

? ? <option>海南省</option>

? ? <option>山東省</option>



</select>

</body>


</html>

```



單選框:


```javascript

<!DOCTYPE html>

<html>


<head>

? ? <meta charset="UTF-8">

? ? <script>

? ? ? ? function onChangeGender() {

? ? ? ? ? ? alert("性別被改變");

? ? ? ? }


? ? </script>

</head>

<body>

性別:


男<input type="radio" name="gender" onchange="onChangeGender();">

女<input type="radio" name="gender" onchange="onChangeGender();" checked>



</body>


</html>


```

#### 3- onclick事件(點擊)增強按鈕??!

##### 按鈕(button)

###### 1<input type="button"value="按鈕1" onclick="onClickButtn()"></input>

###### 2<input type="submit" value="按鈕2" onclick="onClickButtn()" onclick="aaa();">

<!--//只有 type="submit"的 input元素 有提交form表單的功能-->


###### 3<button onclick="onClickButtn()">按鈕3</button>


? ??


? ??

```javascript

? ? <!DOCTYPE html>

<html>


<head>

? ? <meta charset="UTF-8">

? ? <script>

? ? ? ? function onClickButtn() {

? ? ? ? ? ? alert("俺被點擊了");

? ? ? ? }

? ? </script>

</head>

<body>


<input type="button"

? ? ? ?value="按鈕1" onclick="onClickButtn()"></input>

<input type="submit"

? ? ? ? value="按鈕2" onclick="onClickButtn()" onclick="aaa();">

<!--//只有 type="submit"的 input元素 有提交form表單的功能-->


<button? onclick="onClickButtn()">按鈕3</button>

<!--將三個按鈕都添加-->

</body>



</html>





```

? ? 頁面控件事件

```javascript

? ? < input

? ? type = "button"

? ? onclick = "aaa();" >

? ? ? ? < input

? ? type = "submit"

? ? onclick = "aaa();" >

? ? ? ? < button


? ? onclick = "aaa)," > < /button>

```


如果需要表單form點擊后,檢查判斷用戶名是否為空+檢查判斷密碼是否6位? 然后不被提交后,可以用onsubmit返回submit為false




```javascript

<!DOCTYPE html>

<html>


<head>

? ? <meta charset="UTF-8">

? ? <script>

? ? ? ? function aaa() {

? ? ? ? ? ? alert("觸發(fā)提交a");

? ? ? ? ? ? return true;

? ? ? ? }


? ? ? ? function bbb() {

? ? ? ? ? ? alert("觸發(fā)提交b");

? ? ? ? }



? ? </script>

</head>

<body>

<!--如果需要表單form點擊后,檢查判斷用戶名是否為空+檢查判斷密碼是否6位? 然后不被提交后,可以用onsubmit返回submit為false-->

<form action="https://www.baidu.com" onsubmit="return aaa();">

? ? 速速點擊 <input type="submit" onclick="bbb();" value="value=點它!">


</form>



</body>



</html>

```

#####? ? ?單選按鈕(radio)

#####? ? ?復(fù)選按鈕(checkbox)

#####? ? ?普通文本框(text)

#####? ? ?下拉框(select)

#####? ? ?普通文本框(text)



```javascript

```

#### 4- onblur事件(失去焦點)

? ? 普通文本框(text)

#### 5- onfocus事件(得到焦點)

? ? 普通文本框(text)

#### 6- onsubmit事件(提交表單)

? ? form

? ??

? ??

? ??

###? 6.DOM元素操作


###? 6.1數(shù)組

#### 1.1 定義

? ? var array = [1, 2, 3, 4]

#### 1.2常用方法

- array.length=>得到數(shù)組長度

- array[從0開始的下標(biāo)]=>得到具體位置的元素

- array[從0開始的下標(biāo)] = 要賦的值 => 更新具體元素的值

- array.push(5);=> 住數(shù)組末尾添加元素[5]

- array.pop() == > 刪除(冒泡)最后一個元素

- javascript數(shù)組雖然可以存放不同類型的元素,但是推薦存放相同類型的元素

### 6.2控件的操作

### 2.1常見取得控件的3種方法


- var object = documentgetElementById以("控件id")=>通過ID取得唯一控件var

- var objects =document.qetElementsByName("控件組name")=>

? ? 通過NAME取得控件組 單選按鈕? 多選按鈕

- var var =objects = document.getElementsByTagName("標(biāo)簽名")=>通過標(biāo)簽名取得控件組?



### 2.2遍歷控件組


```javascript

? ? var objects = document.getElementsByName("控件組name");

? ? for (var i = 0; i < objects.length; i++) {

? ? ? ? var object = objects[i];

? ? }

```



### 2.3 取得控件屬性

##### 控件.name

##### 控件.id

##### 控件.type

##### 控件.value

##### 控件.disabled

##### 控件.readonly

##### getAttribute("屬性名")


### 2.4 更改控件屬性

##### 控件.控件屬性=要賦的值;

##### setAttribute("屬性名"要賦的值);

### 2.5 節(jié)點操作 (爬蟲)

##### - 查看更改html內(nèi)容 innerHTML

##### - 找到父親節(jié)點parentNode

##### - 找到所有子節(jié)點children

##### - 找到第一個子節(jié)點firstChild

##### - 找到下一個同級節(jié)點nextElementSibling;包括注釋,空格等節(jié)點nextsibling

##### - 創(chuàng)建屬性節(jié)點?

var attributeNode= document.createAttribute("name");

attributeNode.value ="333";

欲添加屬性的節(jié)點 setAttributeNode(attributeNode);

##### - 創(chuàng)建元素節(jié)點

var aaa = document.getElementByld("aaa");

var node= document. createElement("td");

var t=document.createTextNode("333");

node.appendChild(t):

aaa.appendChild(node);



![](media/16888751225450/16892551742914.jpg)

![](media/16888751225450/16892552209268.jpg)


![](media/16888751225450/16892551958172.jpg)



貝拉,生日快樂## ps.JS零碎知識點20230714的評論 (共 條)

分享到微博請遵守國家法律
海林市| 巴林左旗| 开远市| 临夏市| 宁波市| 罗山县| 乌什县| 涿鹿县| 宾川县| 久治县| 南涧| 新闻| 广水市| 木兰县| 锦屏县| 米林县| 丽江市| 阿克陶县| 塘沽区| 怀集县| 花垣县| 信宜市| 十堰市| 吴江市| 偏关县| 翁源县| 荣昌县| 泉州市| 大安市| 邵东县| 青冈县| 奇台县| 陆川县| 高淳县| 青铜峡市| 罗定市| 洮南市| 平山县| 康乐县| 都兰县| 富顺县|