js中字元串和數組的使用

来源:https://www.cnblogs.com/jinfeixiang/archive/2018/11/29/10040326.html
-Advertisement-
Play Games

函數: 函數在調用的時候,會形成一個私有作用域,內部的變數不會被外面訪問,這種保護機制叫閉包。這就意味著函數調用完畢,這個函數形成的棧記憶體會被銷毀。 但有時候我們不希望他被銷毀。 函數歸屬誰跟它在哪調用沒有關係,跟在哪定義有關。 Fn()調用完畢後得到的是一個匿名函數,但是這個函數在fn這個作用域下 ...


 

函數:

函數在調用的時候,會形成一個私有作用域,內部的變數不會被外面訪問,這種保護機制叫閉包。這就意味著函數調用完畢,這個函數形成的棧記憶體會被銷毀。

 

但有時候我們不希望他被銷毀。

函數歸屬誰跟它在哪調用沒有關係,跟在哪定義有關。

Fn()調用完畢後得到的是一個匿名函數,但是這個函數在fn這個作用域下定義的,所以這個匿名函數內部的變數在fn作用域下查找。這種寫法可以使函數內部的變數不被銷毀

基類的Object子類有:

   Function 函數

      Array  數組

   Number 數字

   Boolean  布爾

   String  字元串

   Date   日期

   Math   算術

   regExp 正則

 

函數數組數字布爾字元串日期算數正則都是類。本質都是函數。

String 類

定義字元串的方法

var st=new String(“hello  world”)

簡寫

var st=“hello world”

1.字元串的加號運算   +   僅僅就是拼接  這種方法  叫字元串拼接

2.字元串prototype上的方法

1.charAt()返回指定位置的字元   var s=st.charAt(2)

2.concat()鏈接兩個或多個字元串,並返回新的 var s=st.soncat(sd,"hello world");

3.index Of()返回某個字元串在字元中首次出現的位置,沒有就是-1

4.lastIndex Of() 功能和indexOf一樣 不過是從後往前

5.match()

6.Search()

7.Replace()

8.slice()截取字元串的一部分

9.splice()將字元串按某種形式分割成數組

10.substr()也是截取和slice()有點區別

(1)      substring()  slice一樣

(2)      toLowerCase() 將字元串的中字元都變成小寫

(3)      toUpperCase() 將字元串中的字元都變成大寫

(4)      trim()  去掉字元串兩端的空白

  每個函數都天然帶一個return。如果寫return返回聲明就是什麼,如果不寫就是undefined。

  類本質也是函數,裡面也有return但是預設是Object,如果強制return一個值,不會造成影響,如果return是一個對象,就會造成影響

Array 數組這類

var arr=new Array(“12”,zhangsan)

簡寫

var arr=【12,“張三”】

數組的基本方法:

1.push()在數組結尾添加一個新元素,返回值是數組長度

2.unshift() 在數組結尾添加一個元素返回是數組長度

3.pop()刪除數組最後一個元素,返回是刪除那個元素

4.shift()刪除數組第一個元素,返回是刪除那個元素

5.slice()截取數組一部分,並返回新的數組。對原來數組沒有影響

6.splice()在數組中添加或刪除元素

7.sort() 給數組中的元素排序

8.reverse() 反轉數組中元素的順序

9.toString() 將數組轉換成字元串格式的數組,並返回結果

10.concat()合併多個數組,並返回它的值

11.indexOf()檢索數組中元素,並返回它所在位置,沒有就是-1

12.jion()將數組所有元素轉成一個字元串

//數組去重

var arr=[12,45,12,23,12,23];

var ass=[];

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

    if(ass.indexOf(arr[i])==-1){

        ass.push(arr[i])

    }

}

 

 

 

 

 

 

 

 

 

 

 


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

-Advertisement-
Play Games
更多相關文章
  • With Custom Elements, web developers can create new HTML tags, beef-up existing HTML tags, or extend the components other developers have authored. ...
  • 1. 2. 3.(類似法2) ...
  • js如何判斷值是否是數字 1. isNaN()方法2. 正則表達式var re = /^[0-9]+.?[0-9]*$/; //判斷字元串是否為數字 //判斷正整數 /^[1-9]+[0-9]*]*$/3. 利用parseFloat的返回值 isNaN(inputData)不能判斷空串或一個空格;如 ...
  • 在掘金上看到了一位大佬發了一篇很詳細的面試記錄文章 "《一年半經驗,百度、有贊、阿裡面試總結》" ,為了查漏補缺,抽空就詳細做了下。( 估計只有我這麼無聊了哈哈哈 ) 有給出的或者有些不完善的答案,也儘力給出/完善了(可能有錯,大家自行辨別)。有些很困難的題目(例如實現 ),附帶相關鏈接(懶癌患者福 ...
  • 1. Virtual DOM是什麼 Virtual DOM,即虛擬DOM樹。瀏覽器在解析文件時,會將 文檔轉換為 對象,在瀏覽器環境中運行的腳本文件都可以獲取到它,通過操作 對象暴露的介面可以直接操作頁面上的DOM節點。但是DOM讀寫是非常耗性能的,很容易觸發不必要的重繪和重排,為了更好地處理DOM ...
  • 一、DOM對象 DOM對象整體包括: HTML DOM Document對象 HTML DOM 元素對象 HTML DOM 屬性對象 HTML DOM 事件對象 HTML DOM Console 對象 CSS Style Declaration 對象 二、 Document對象詳解 HTML DOM ...
  • 棧是一種LIFO(Last-In-First-Out,後進先出)的數據結構著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。原文: https://www.w3cplus.com/javascript/array-part-3.html © w3cplus.com 棧是一種後進先出 ...
  • 接上一篇,這裡使用 sequelize 來連接 postgresql 資料庫 1、安裝 sequelize,資料庫驅動 pg 2、新建配置文件夾 conf 及 配置文件 db.conf.ts 3、連接資料庫,新建文件夾 db 及 配置文件 db.ts 4、資料庫實體類,新建文件夾 models 及文 ...
一周排行
    -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# ...