JavaScript(js)筆記一

来源:https://www.cnblogs.com/lyang-a/archive/2019/08/30/11434517.html
-Advertisement-
Play Games

js註釋 JavaScript註釋與Java註釋相同 js五大基本類型:   number(數值型)、string(字元串性)、boolean(布爾型)、undefined類型、null類型 number 包括:數值類型、包含整型、浮點型、NaN和Infinity(無窮大)。 關 ...


js註釋

JavaScript註釋與Java註釋相同

// 單行註釋

/* 
    多行註釋
*/

js五大基本類型:

  number(數值型)、string(字元串性)、boolean(布爾型)、undefined類型、null類型
number包括:數值類型、包含整型、浮點型、NaN和Infinity(無窮大)。

關於數組的空間長度問題:

  如何獲取數組的空間長度:
    通過length屬性獲取數組的空間長度
  數組的length詳解:
    java:只讀屬性
     js:讀寫屬性

數組元素的預設值:

  java

      1、整數類型(byte、short、int、long)的基本類型變數的預設值為0。

      2、浮點型(float、double)的基本類型變數的預設值為0.0。

      3、字元型(char)的基本類型變數的預設為 “/u0000”。

      4、布爾性的基本類型變數的預設值為 false。

      5、引用類型的變數是預設值為 null(null就是空對象)。

   js:undefined

JavaScript 輸出

JavaScript 沒有任何列印或者輸出的函數。
JavaScript 可以通過不同的方式來輸出數據:
  使用 window.alert() 彈出警告框。
  使用 document.write() 方法將內容寫到 HTML 文檔中。
  使用 innerHTML 寫入到 HTML 元素。
  使用console.log() 寫入到瀏覽器的控制台。

js數組排序:

  sort(): 函數按照字元串順序對值進行排序。
  數組.sort(function(a, b){return a - b});

//字元串數組(字母順序對數組進行排序)
var arr_str = ["Banana", "Orange", "Apple", "Mango"];
var arr_str_sort = arr_str.sort();
document.write(arr_str_sort);

//整形數組
var arr = [9,5,1,2,7,6,4,3,0];
var arr_sort = arr.sort(function(a, b){return a - b});
console.log(arr_sort);

解決js代碼放在標簽前面或<head>內導致js代碼無效的解決方案:

使用<script>無效的解決方案:

window.οnlοad = function() {
    //js代碼
}

使用jquery無效的解決方案:

$(document).ready(function() {
    //js代碼
})

假設法:

  1、定義一個變數,標記該變數的值為true。
  2、推翻假設,把標記的值修改為false,並且跳出迴圈。
  3、如果標記的值依舊為true,則證明為真;
    如果標記的值修改為false,則證明為假

// 1.通過詢問框獲得一個正整數
var num = prompt("請輸入一個正整數");
// a)假設num就是一個質數
var flag = true; // 設置標記的值為true
// 2.通過迴圈獲得[2, num)之間所有的整數
for(var i = 2; i < num; i++) {
    // b)判斷num是否能被i整除。
    if(num % i === 0) {
        // 此處已經證明num不是一個質數,那麼推翻假設,修改標記的值
        flag = false;
        // 因為此處已經確定num不是一個質數,所以後續迴圈沒必要進行,那麼我們需要跳出迴圈
        break;
    }
}
// c)價差flag標記的值,從而確定num是否是一個質數
if(flag) { // flag == true
    document.write(num + "是一個質數");
} else { // flag == false
    document.write(num + "不是一個質數");
}

常見的HTML事件

下麵是一些常見的HTML事件的列表:

事件 描述
onchange HTML 元素改變
onclick 用戶點擊 HTML 元素
onmouseover 用戶在一個HTML元素上移動滑鼠
onmouseout 用戶從一個HTML元素上移開滑鼠
onkeydown 用戶按下鍵盤按鍵
onload 瀏覽器已完成頁面的載入

條件語句

在 JavaScript 中,我們可使用以下條件語句:

  • if 語句 - 只有當指定條件為 true 時,使用該語句來執行代碼

  • if...else 語句 - 當條件為 true 時執行代碼,當條件為 false 時執行其他代碼

  • JavaScript三目運算 - 當條件為true 時執行代碼,當條件為 false 時執行其他代碼

  • if...else if....else 語句- 使用該語句來選擇多個代碼塊之一來執行

  • switch 語句 - 使用該語句來選擇多個代碼塊之一來執行

常用的正則表達式及使用方法:

在 JavaScript 中,正則表達式通常用於兩個字元串方法 : search() 和 replace()。

  search() 方法 用於檢索字元串中指定的子字元串,或檢索與正則表達式相匹配的子字元串,並返回子字元串的起始位置。

  replace() 方法 用於在字元串中用一些字元替換另一些字元,或替換一個與正則表達式匹配的子字元串。

    (詳情參照:https://www.runoob.com/js/js-regexp.html)

/*是否帶有小數*/
function    isDecimal(strValue )  {  
   var  objRegExp= /^\d+\.\d+$/;
   return  objRegExp.test(strValue);  
}  

/*校驗是否中文名稱組成 */
function ischina(str) {
    var reg=/^[\u4E00-\u9FA5]{2,4}$/;   /*定義驗證表達式*/
    return reg.test(str);     /*進行驗證*/
}

/*校驗是否全由8位數字組成 */
function isStudentNo(str) {
    var reg=/^[0-9]{8}$/;   /*定義驗證表達式*/
    return reg.test(str);     /*進行驗證*/
}

/*校驗電話碼格式 */
function isTelCode(str) {
    var reg= /^((0\d{2,3}-\d{7,8})|(1[3584]\d{9}))$/;
    return reg.test(str);
}

/*校驗郵件地址是否合法 */
function IsEmail(str) {
    var reg=/^\w+@[a-zA-Z0-9]{2,10}(?:\.[a-z]{2,4}){1,3}$/;
    return reg.test(str);
}

js中Window 方法

一些其他方法:

  • window.open() - 打開新視窗
  • window.close() - 關閉當前視窗
  • window.moveTo() - 移動當前視窗
  • window.resizeTo() - 調整當前視窗的尺寸

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 博客園美化小火箭 一.代碼 二.原理 三.效果展示 ...
  • 問題在於對數據的操作,或數據類型,或數據名稱 ...
  • <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><div id="app"> <!-- 在組件標簽上綁定的事件都vue的自定義事件。 --> <v-xiaosh ...
  • 完成最基礎的Vue環境及新建一個vue項目。 一般來說,我們拿到一個項目需求或者得到一個需求的時候,第一件應該做的事情不是立馬坐在電腦前面去寫代碼,如果你這麼做的,好吧。。。我只能暫時認定你為一個剛上路的。 首先,用戶給你一個需求,我們先要做的是需求的分析,明白用戶需要什麼?我們當前的條件能為他創造 ...
  • 原文地址:https://www.cnblogs.com/wisewrong/p/9642264.html 一、測試模版 數組去重是一個老生常談的問題,網上流傳著有各種各樣的解法 為了測試這些解法的性能,我寫了一個測試模版,用來計算數組去重的耗時 這裡分別創建了兩個長度為 10W 和 5W 的數組 ...
  • 許多人都在提倡: “直接用原生的 JavaScript 就好了,不需要 jQuery 了”。 You might not need jQuery嘗試告訴我們,擺脫 jQuery 是一件很容易的事情。但是,它的第一個例子恰恰告訴我們用 jQuery 其實也不錯,因為我們寫了 10 行原生的 JavaS ...
  • 一、網路伺服器 1、http狀態碼 1xx: 表示普通請求,沒有特殊含義 2xx:請求成功 + 200:請求成功 3xx:表示重定向 + 301 永久重定向 + 302 臨時重定向 + 303 使用緩存(伺服器沒有更新過) 4xx:無法訪問 + 403:無法訪問 + 404:資源找不到 5xx:服務 ...
  • 01. Object構造函數模式 方式一: Object構造函數模式 * 套路: 先創建空Object對象, 再動態添加屬性/方法 * 適用場景: 起始時不確定對象內部數據 * 問題: 語句太多 02. 對象字面量 方式二: 對象字面量模式 * 套路: 使用{}創建對象, 同時指定屬性/方法 * 適 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...