日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > javascript >内容正文

javascript

[No0000101]JavaScript-基础课程1

發(fā)布時(shí)間:2023/12/18 javascript 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [No0000101]JavaScript-基础课程1 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

JavaScript 是一種輕量級(jí)的編程語(yǔ)言,很容易學(xué)習(xí),同時(shí)也是一種被廣泛用于客戶端Web開發(fā)的腳本語(yǔ)言。通過本課程學(xué)習(xí),我們可以了解到JavaScript的基本語(yǔ)法知識(shí),以及怎樣使用它去創(chuàng)建簡(jiǎn)單的游戲和應(yīng)用。

1.獲取字符的長(zhǎng)度

"youName".length;

2.使用"+"加法、"-"減法、"*"?乘法和"/"除法,對(duì)兩個(gè)數(shù)字進(jìn)行運(yùn)算;

3."//"是注釋,注釋是一個(gè)文本行,JavaScript無(wú)法運(yùn)行這行代碼。它只是用來讓人們閱讀的。

4.這是JavaScript(JS)編程語(yǔ)言。編程語(yǔ)言有很多語(yǔ)言,但JS有許多用途,很容易學(xué)習(xí)。

我們可以使用JavaScript來做什么?

  • 使網(wǎng)站對(duì)用戶交互作出響應(yīng)
  • 構(gòu)建應(yīng)用程序和游戲(例如二十一點(diǎn))
  • 在互聯(lián)網(wǎng)上獲取信息(如在Twitter上找出熱門詞的主題)
  • 組織和顯示數(shù)據(jù)(如電子表格自動(dòng)化工作;數(shù)據(jù)可視化)
  • confirm('這是一個(gè)例子,使用JS在網(wǎng)站上創(chuàng)建一些交互。單擊確定繼續(xù)!');

    5.輸入

    prompt("你叫什么名字?"); prompt("你多大了?");

    6.數(shù)據(jù)有各種類型,您已經(jīng)使用了兩個(gè)。

  • number: 數(shù)量,你可以做數(shù)學(xué),number在您的代碼中,只是寫一些數(shù)字沒有引號(hào):42,190.12334。
  • string:是字符的序列,像字母a - z一樣,空格,甚至數(shù)字。這些都是字符串:"Ryan","4"和"你叫什么名字?"。
  • 還有一種類型是boolean,布爾值。它有兩個(gè)值true或false。例如,比較兩個(gè)數(shù)字返回真或假的結(jié)果:23 > 10?是?true。

    var length = "我編碼如飛".length; console.log(length); length > 10

    ?

    7.console.log()會(huì)將括號(hào)內(nèi)的內(nèi)容打印到控制臺(tái);

    8.到目前為止,我們已經(jīng)學(xué)習(xí)了三種數(shù)據(jù)類型:

  • strings?(例: "dogs go woof!")
  • numbers?(例: 4,10)
  • booleans?(例: false, 5 > 4)
  • 比較運(yùn)算符列表:

  • >?大于
  • <?小于
  • <=?小于等于
  • >=?大于等于
  • ==?等于(等同)
  • ===?等于(恒等)
  • !==?不等于
  • 注意: ?"=="?兩邊值類型不同的時(shí)候,會(huì)進(jìn)行類型轉(zhuǎn)換,再比較。 ?"==="不做類型轉(zhuǎn)換,類型不同的一定不等。 ?例如:5 == "5"?結(jié)果為true,而5 === "5"?結(jié)果為false

    console.log(15 > 4); // 15 > 4 判斷為true,所以打印結(jié)果是true console.log("Xiao Hui".length<122); console.log("Goody Donaldson".length<8); console.log(8*2===16);

    9.if語(yǔ)句是由if關(guān)鍵詞、一個(gè)條件和一對(duì)大括號(hào){ }組成。如果條件的結(jié)果是true,花括號(hào)內(nèi)的代碼將運(yùn)行。

    if( "youName".length >= 7 ) {console.log("你有一個(gè)很長(zhǎng)的名字!"); } if( "myName".length >= 7 ) {alert("你的名字很長(zhǎng)!"); }else {alert("你的名字很短"); }

    10.我們遇到一個(gè)有趣的符號(hào)稱為 "%" 模。放在兩個(gè)數(shù)字之間時(shí),計(jì)算機(jī)將第一個(gè)數(shù)字除以第二個(gè),然后返回余數(shù)。所以如果我們計(jì)算 23 % 10 ,我們用23除以10,結(jié)果為2,余數(shù)是3,所以23%10結(jié)果為3。

    11.x是指從哪里開始截取,y是指到哪里結(jié)束。字符串中的每個(gè)字符編號(hào)從0開始.

    "some word".substring(x, y);

    12.通過一個(gè)具體的,區(qū)分大小寫的名稱定義一個(gè)變量。一旦您用特定名稱創(chuàng)建(或聲明)一個(gè)變量,然后你可以通過這個(gè)變量名來獲取這個(gè)值。

    var varName = data;

    13.一個(gè)函數(shù)接受輸入,并做一些處理后,產(chǎn)生輸出。

    // 函數(shù)看起來就像是這樣的: var divideByThree = function (number) {var val = number / 3;console.log(val); }; // 在第12行,我們調(diào)用函數(shù)的名字 //在這里,它被稱為“dividebythree” // 我們告訴計(jì)算機(jī)輸入數(shù)量(即6) // 然后電腦運(yùn)行函數(shù)內(nèi)的代碼! divideByThree(6);

    1、?首先,我們使用var聲明一個(gè)函數(shù),然后給它起一個(gè)名字divideByThree。名字應(yīng)以小寫字母開頭,該約定是使用駝峰命名法(每個(gè)單詞首字母大寫,第一單詞除外)。

    2、 然后使用?function關(guān)鍵字來告訴計(jì)算機(jī)你正在創(chuàng)建一個(gè)函數(shù)。

    3、 括號(hào)中的代碼被稱為一個(gè)參數(shù)。這是一個(gè)占位符,當(dāng)我們調(diào)用的時(shí)候會(huì)給它一個(gè)特定的值。

    4、 然后將你要重復(fù)的代碼寫在“{ }”之間,每段代碼須用“;”來結(jié)束。

    可以調(diào)用函數(shù)來運(yùn)行這段代碼:divideByThree(6);

    使用函數(shù),我們只需要輸入函數(shù)名來調(diào)用函數(shù),并將參數(shù)傳入到后面的括號(hào)中。電腦將運(yùn)行可重復(fù)使用的代碼,并將具體的參數(shù)值替換到代碼中。

    14.return關(guān)鍵字告訴程序什么時(shí)候函數(shù)要返回?返回值。所以函數(shù)運(yùn)行到return關(guān)鍵字時(shí),該功能會(huì)立即停止運(yùn)行并返回值。

    // 好的函數(shù)寫法 var calculate = function (number) {var val = number * 10;//就算沒有這樣的間距或換行,計(jì)算機(jī)也是可以理解這些代碼的,但使用間距和換行可以使編碼更加容易查看,并且這是最好的做法。console.log(val);//代碼塊的每一行和函數(shù)的末尾都要加上分號(hào),分號(hào)的作用就像是一段中的一句,它有助于計(jì)算機(jī)知道每句代碼在什么時(shí)候結(jié)束。 }; // 寫的很糟的函數(shù) var greeting = function(name){console.log(name);}

    在編程D.R.Y.原則是非常重要的。不要重復(fù)!

    作用域可以是全局或局部。

    函數(shù)外部定義的變量一旦被聲明就可以在任何地方訪問,它們被稱為全局變量或者說它們的作用域是全局的。

    到目前為止我們看到的函數(shù)只有一個(gè)參數(shù)。但函數(shù)寫多個(gè)參數(shù)通常是有用的。

    var areaBox = function(length, width) {return length * width; };

    函數(shù)內(nèi)部定義的變量是局部變量。他們無(wú)法在函數(shù)外部訪問。

    var關(guān)鍵字會(huì)在當(dāng)前作用域創(chuàng)建一個(gè)新的變量。這意味著,如果變量被聲明在函數(shù)之外,該變量就具有全局的作用域。如果變量被聲明在函數(shù)中,該變量就具有局部的作用域。

    var my_number = 7; //這是全局變量 var timesTwo = function(number) {my_number = number * 2;console.log("內(nèi)部函數(shù)中 my_number 的值是: ");console.log(my_number); }; timesTwo(7); console.log("外部 my_number 值是: ") console.log(my_number);

    在第4行,我們沒有使用var關(guān)鍵字,所以我們?cè)诤瘮?shù)外用console.log打印出my_number的值將會(huì)是14。

    15.

  • 讓i遞增1的更有效的方法是使用?i++;
  • 讓i遞減1為?i--;
  • 我們可以使用?i+=x來編寫你希望遞增的任意值,例如:i+=3,他與i=i+3是相同的;
  • 我們也可以使用i-=x來編寫你希望遞減的任意值;
  • 當(dāng)你編寫一個(gè)循環(huán)時(shí),要非常小心,如果你不能正常結(jié)束這個(gè)循環(huán),這會(huì)造成所謂的死循環(huán),他會(huì)讓你的瀏覽器崩潰掉。
  • // for 循環(huán)例子: for (var counter = 1; counter < 6; counter++) {console.log(counter); }

    ?16.數(shù)組:

  • 數(shù)據(jù)存儲(chǔ)列表 ;
  • 可以同時(shí)存儲(chǔ)不同數(shù)據(jù)類型的數(shù)據(jù);
  • 數(shù)組是有序的,所以每一個(gè)數(shù)據(jù)的位置是固定的。
  • var names = ["Mao","Gandhi","Mandela"]; var sizes = [4, 6, 3, 2, 1, 9]; var mixed = [34, "candy", "blue", 11]; var arrayName = [data, data, data];

    任何時(shí)候當(dāng)你看到有“[]”的數(shù)據(jù),它就是一個(gè)數(shù)組。當(dāng)你調(diào)用數(shù)組的?.length時(shí),將返回?cái)?shù)組元素的數(shù)量。

    每個(gè)數(shù)據(jù)的位置是從0開始計(jì)算的,而不是1;數(shù)組的第一個(gè)元素:junkData[0]; 數(shù)組中的第三個(gè)元素:junkData[2];

    var text = "Blah blah blah blah blah blah Eric \ blah blah blah Eric blah blah Eric blah blah \ blah blah blah blah blah Eric"; var myName = "Eric"; var hits = []; // Look for "E" in the text for(var i = 0; i < text.length; i++) {if (text[i] == "E") {// 如果找到了,就添加到數(shù)組中// 長(zhǎng)度和myName長(zhǎng)度一樣for(var j = i; j < (myName.length + i); j++) {hits.push(text[j]);}} } if (hits.length === 0) {console.log("沒有發(fā)現(xiàn)你的名字!"); } else {console.log(hits); }

    ?由于text可能會(huì)比較長(zhǎng),你可以使用反斜杠“\”來結(jié)束,然后在下一行繼續(xù)寫;

    ?數(shù)組有一個(gè)push()方法,它會(huì)將括號(hào)中的內(nèi)容添加到數(shù)組末尾。

    newArray = []; newArray.push('hello'); newArray[0]; // 等于 'hello' var coinFace = Math.floor(Math.random() * 2); while(coinFace === 0){console.log("正面! 繼續(xù)...");var coinFace = Math.floor(Math.random() * 2); } console.log("反面! 停止.");

    ?

    ?16.你可能已經(jīng)注意到,當(dāng)我們給一個(gè)變量賦值boolean類型值為true時(shí),我們不需要用 === 來檢查這個(gè)變量,例如:

    var bool = true; while(bool){//Do something } var bool = true; while(bool === true){//Do something }

    ?

    但第一種是更快的方式,如果你碰巧使用數(shù)字,正如我們前面做的,你甚至可以做的:

    var myNumber = 1; while(myNumber) {// Do something! }

    只要條件的計(jì)算結(jié)果為true時(shí),循環(huán)將繼續(xù)運(yùn)行。如果是false就會(huì)停下來。(當(dāng)你使用一個(gè)數(shù)字來作為條件時(shí),javascript能夠理解1代表true,0代表false)

    正如我們提到的,for循環(huán)非常適合做你提前知道你要重復(fù)多少次循環(huán)的任務(wù)。另一方面,while循環(huán)是當(dāng)你不得不循環(huán),但你不知道有多少次循環(huán)的的時(shí)候。

    有時(shí)你想確保你的循環(huán)運(yùn)行至少一次。在這種情況下,你需要修改while循環(huán)為do/while循環(huán)。

  • youHit值為Math.floor(Math.random() * 2),這是給youHit設(shè)置一個(gè)隨機(jī)數(shù)0或者1;
  • damageThisRound值為Math.floor(Math.random()*5 + 1),這將生成一個(gè)1到5間的隨機(jī)數(shù)。
  • totalDamage = totalDamage + damageThisRound;這有一個(gè)快捷的寫法:就是使用+=運(yùn)算符。

    17.如果你調(diào)用isNaN做一些事情,它會(huì)檢查它是不是個(gè)數(shù)字,如果是數(shù)字將返回false。

    isNaN('berry'); // => true isNaN(NaN); // => true isNaN(undefined); // => true isNaN(20); // => false

    注意:如果你調(diào)用isNaN傳入的一個(gè)字符串,看起來像一個(gè)數(shù)字,比如“20”,javascript會(huì)嘗試將字符串自動(dòng)轉(zhuǎn)換為數(shù)字20,這將返回false(因?yàn)?0是一個(gè)數(shù)字)。

    注意你不能這樣寫:

    isNaN(unicorns);

    除非你已經(jīng)定義了一個(gè)變量叫unicorns; 然而你可以這樣做:

    isNaN("unicorns"); // => true

    18.

    Switch允許你預(yù)先設(shè)置多個(gè)選項(xiàng)(case),然后檢查表達(dá)式是否匹配。

    如果匹配,就會(huì)執(zhí)行匹配的程序,如果沒有匹配的,就會(huì)執(zhí)行default選項(xiàng)。

    19.?JavaScript有三個(gè)邏輯運(yùn)算符:

  • 與(&&);
  • 或(| |);
  • 取反(!)。
  • var answer = prompt("用戶問題").toUpperCase();

    ?

    在你的提示中調(diào)用.toUpperCase().toLowerCase(),以確保獲得用戶的輸入是大寫或者小寫。

    20.異構(gòu)數(shù)組,這意味著數(shù)組中可以有不同類型的元素

    var mix = [42, true, "towel"];

    ?

    ?不僅可以在數(shù)組中存儲(chǔ)不同的數(shù)據(jù)類型,甚至可以在數(shù)組中存放其他數(shù)組??梢酝ㄟ^嵌套來實(shí)現(xiàn)二維數(shù)組,像這樣:

    var twoDimensional = [[1, 1], [1, 1]];

    可能要求第一行有三個(gè)元素,第二行為一個(gè)元素,第三行有兩個(gè)元素。Javascript是允許的,這就是所謂的交錯(cuò)數(shù)組。

    var jagged = [[9,8,4],[3,2],[1]]; for (var i = 0;i<jagged.length;i++){console.log(jagged[i]); }

    ?

    21.可以把對(duì)象當(dāng)做是鍵值對(duì)的組合(如數(shù)組),只是他們的鍵不是0,1或2這些數(shù)字,它們可以是字符串和變量。

    var phonebookEntry = {};phonebookEntry.name = 'tom'; phonebookEntry.number = '(555) 555-5555'; phonebookEntry.phone = function() {console.log('打電話給' + this.name + ' ,號(hào)碼是 ' + this.number + '...'); };phonebookEntry.phone();

    除了它的鍵是字符串和變量外,這個(gè)對(duì)象就像是一個(gè)數(shù)組。 對(duì)象的花括號(hào)之間是收集信息(鍵和值),像這樣的:

    var myObject = {key: value,key: value,key: value };

    ?

    22.用兩種方法可以創(chuàng)建對(duì)象,一種是你剛剛做的,另一種是使用對(duì)象的構(gòu)造函數(shù)。

    var myObj = {type: 'fancy',disposition: 'sunny' };var emptyObj = {};

    使用構(gòu)造函數(shù),語(yǔ)法如下

    var myObj = new Object();//這告訴javascript我要?jiǎng)?chuàng)建一個(gè)新的事物是Object;

    你已經(jīng)通過兩種方式創(chuàng)建了對(duì)象,你可以添加鍵到你的對(duì)象。

    myObj["name"] = "Charlie"; myObj.name = "Charlie";

    兩者都是正確的,第二個(gè)是簡(jiǎn)寫??纯催@是不是有點(diǎn)類似于數(shù)組呢?

    使用[]或者.來添加添nameage屬性。

    添加對(duì)象到數(shù)組,我們可以這樣:

    var myObj = {type: 'fancy',disposition: 'sunny' }; myArray = [myObj]; var friends = {};friends.Tom = {name: "Tom",number: "(206) 555-5555",address: ['USA','NewYork'] }; friends.Jerry = {name: "Jerry",number: "(010) 555-5555",address: ['中國(guó)','北京'] };var list = function(obj) {for(var prop in obj) {console.log(prop);} };var search = function(name) {for(var prop in friends) {if(friends[prop].name === name) {return friends[prop];}} };list(friends); console.log(search("Jerry").number);

    ?

    現(xiàn)在我們來將你的一些朋友添加到friends對(duì)象中,每個(gè)朋友需要一個(gè)名字,電話號(hào)碼,等等。我們將使用一個(gè)新對(duì)象來保存每個(gè)朋友的信息!沒錯(cuò),我們是在對(duì)象中創(chuàng)建對(duì)象!

    將一些空對(duì)象添加到你的friends對(duì)象中去,確保你添加的對(duì)象的名字是“Tom”和“Jerry”,我們將使用這兩個(gè)名字來做為你空對(duì)象的鍵。

    var friends = {bill: {},steve: {} };

    或者使用中括號(hào)([]),或點(diǎn)(.),像這樣:

    friends[bill] = {}; friends.steve = {};

    ?23.數(shù)組和變量存儲(chǔ)數(shù)據(jù)是一樣的。不同的是,數(shù)組可以存儲(chǔ)更多的值,一個(gè)變量只能存儲(chǔ)一個(gè)。

    要訪問數(shù)組,我們可以使用中括號(hào)符號(hào),并要記住數(shù)組的索引是從0開始的(例如,數(shù)組中的第一個(gè)值是在位置0)。

    創(chuàng)建一個(gè)對(duì)象就像聲明一個(gè)變量,或定義一個(gè)函數(shù)一樣,我們可以使用var,緊隨其后的是對(duì)象的名稱和一個(gè)等號(hào); 然后每個(gè)對(duì)象:

    ?1. 以“{“開始; ?2. 里面有對(duì)象相關(guān)的信息; ?3. 以“}“結(jié)束。

    每條信息在一個(gè)對(duì)象中被稱為一個(gè)屬性。當(dāng)創(chuàng)建一個(gè)對(duì)象時(shí),每個(gè)屬性都有一個(gè)名稱,后面存放其值。

    舉例來說,如果我們要顯示Bob的對(duì)象,他是34歲,我們會(huì)輸入age:34。

    age是屬性,而34是該屬性的值。當(dāng)我們有一個(gè)以上的屬性時(shí),它們之間用逗號(hào)隔開。最后一個(gè)屬性不需要用逗號(hào)來結(jié)束。

    使用點(diǎn)符號(hào)來訪問屬性,所以我們應(yīng)該使用ObjectName.PropertyName(例如:bob.name);

    除了點(diǎn)符號(hào),我們也可以使用中括號(hào)來訪問屬性。在本例中,我們使用ObjectName["PropertyName"]訪問所需的屬性。請(qǐng)注意,我們需要在屬性的名字上加上雙引號(hào)。

    24.函數(shù)使用function關(guān)鍵字后跟:

    • 一對(duì)圓括號(hào)()里面的可放置參數(shù)。
    • 一對(duì)花括號(hào),來放置函數(shù)的代碼{}。
    • 分號(hào);。

    ?

    轉(zhuǎn)載于:https://www.cnblogs.com/Chary/p/No0000101.html

    創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

    總結(jié)

    以上是生活随笔為你收集整理的[No0000101]JavaScript-基础课程1的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。