JS對象與jQuery對象

JS對象大致可以分為三種,如下圖:
在這里插入圖片描述
JS常用內置對象(JS自身所持有的對象,不需要創建,直接可用):
String:API跟java的字符串API大致相同

兩種創建對象的方式:String s1 = “hello world”;

                              String s2 = new String("hello world");

String有length屬性,但是在java中String是有length方法的;其含義是不一樣的。

Number:是數值對象

創建對象:var myNum = 123456;

Boolean:跟java的布爾類似

Array:有length屬性,而且數組長度是可變的;

創建對象:var a1 = new Array();

             var a2 = new Array(7);var a3 = new Array(100,"a",true);var a4 = [100,200,300];

訪問數組元素: a1[0] = 1;//a1長度由0變成了1

                    console.log(a3[1]);

Math:對象用于執行數學任務,有相應的API

Date:是JS中操作日期的對象,與java雷士,有相應的API

RegExp:正則表達式對象

創建方式:var regExp = /^\d{3,6}/g;//一般以開頭,以/g; //一般以^開頭,以/g;//結尾

             var regExp1 = new RegExp("/^\d{3,6}$/");

注意:正則表達式對象,后續可以接兩個參數,第一個參數,是正則表達式,第二個參數可以是g或者i;其中g表示設定當前匹配為全局模式;i表示忽略匹配中大小寫的檢測。

Function:JS中的函數就是Function對象,函數名就是指向Function的引用

             使用函數名是可以訪問對象;函數名()是調用函數

JS外部對象(由瀏覽器提供的,可以直接訪問、操作瀏覽器;是瀏覽器提供的API,也是一套對象):
BOM:瀏覽器對象模型,用來訪問和操作瀏覽器窗口的;如下圖:
在這里插入圖片描述
DOM:文檔對象模型,用來操作文檔的;如下圖:
在這里插入圖片描述
BOM與DOM的關系:
在這里插入圖片描述
其中細節就不詳解了,因為只是介紹對象,并不是接受BOM和DOM的操作。

自定義對象:
直接創建對象:var stu = {“name”:“張三”,“age”:“18”,“job”:function(){}};//相當于一個JSON對象

構造器創建對象:

	function f2(){var teacher = new Object();teacher.name = "老師";teacher.age = 18;teacher.sex = "woman";teacher.work = function(){alert("我教書的")};alert(teacher.name);alert(teacher.age);teacher.work()}//自定義構造器,//1.函數做成構造器首字母要大寫//2.聲明好要傳入的參數//3.將參數存入對象內部function Coder(name,age,work){//this就是當前創建出來的對象//this.name是給該對象增加一個屬性//=name是將參數賦值給這個屬性this.name = name;this.age = age;this.work = work;}function f3(){var coder = new Coder("李四",30,function(){alert("我是小白")});alert(coder.name);alert(coder.age);coder.work();}<input type="button" value="內置構造器"οnclick="f2();"/><input type="button" value="自定義構造器"οnclick="f3();"/>

使用jQuery可能存在3中對象:

1.jQuery對象:

通常jQuery選擇器選中的目標一定是jQuery對象;一般jQuery方法若返回節點則是jQuery對象;一般jQuery賦值的方法返回的是jQuery對象;  

2.DOM對象:

從jQuery中獲取一個DOM對象:$obj[i]/$obj.get(i)(jQuery方法); jQuery轉換為一DOM對象的方法:jQuery加一個下標轉換;

3.內置對象(尤其是字符串)

一般jQuery返回具體的值則是String注:萬能方法:輸出對象觀察 

舉例:
jQuery對象與DOM對象之間的相互轉換,如下代碼:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>jQuery對象</title>
<script src="../js/jquery-1.11.1.js"></script>
<script>//jQuery轉為DOM的方法:jQuery加一個下標轉換function print(){//取到所有的p,選擇器獲取的jquery對象var $ps = $("p");console.log($ps.typeof);for(var i=0;i<$ps.length;i++){console.log($ps[i]);alert($ps[i].innerHTML);}}//DOM轉jQuery的方法//傳入的this是正在點擊的那張圖片,此處的this(img)是一個DOM對象function chg(img){//沒寫參數就是取值,寫了就是設置值if($(img).width()=="1000"){$(img).width("250px").height("250px");}else{$(img).width("1000px").height("701px");}}
</script>
</head>
<body><input type="button" value="打印" οnclick="print()"/><p>1.jQuery對象本質上是DOM數組</p><p>2.jQuery對象和DOM對象可以互轉</p><p>3.jQuery對象只能調用jQuery方法</p><p>4.DOM對象只能調用DOM方法</p><div><img src="../image/4.jpg" οnclick="chg(this);"/><img src="../image/5.jpg" οnclick="chg(this);"/><img src="../image/6.jpg" οnclick="chg(this);"/></div>
</body>
</html>

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/249204.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/249204.shtml
英文地址,請注明出處:http://en.pswp.cn/news/249204.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Vue-router 中hash模式和history模式的區別

Vue-router 中hash模式和history模式的關系 在vue的路由配置中有mode選項 最直觀的區別就是在url中 hash 帶了一個很丑的 # 而history是沒有#的 mode:"hash"; mode:"history"; hash模式和history模式的不同 對于vue這類漸進式前端開發框架&#xff0…

Nginx Slab內存管理

L38 Slub內存管理適用 ngx_http_limit_conn_module、ngx_http_limit_req_module 模塊場景 我們可以用阿里第三方模塊Slab_Stat模塊 并且用add-module 方式編譯進openresty中 轉載于:https://www.cnblogs.com/jackey2015/p/10684151.html

day2---while else

# -*- coding:utf-8 -*-while 條件&#xff1a;循環體終止循環 else&#xff1a; while else 解釋&#xff1a;當循環體中沒有被break打斷則會運行else&#xff0c;打斷則不會運行else# 例子 a 0 while a < 5:print(a)a 1break else:print(循環結束) # 0 轉載于:https:/…

jQuery中this與$(this)的區別總結

https://www.cnblogs.com/gfl123/p/8080484.html

2019前端必會黑科技之PWA

一、背景 從2018年到現在&#xff0c;作為號稱下一代web應用模型的PWA&#xff0c;逐漸成為了一個各大前端廠商爭先恐后進行涉足&#xff0c;布局的一個新的技術&#xff0c; 其主要的對標物Native app&#xff0c;作為現在最主流的mobile端應用&#xff0c;它的安全&#xff…

Tcpdump抓包工具的使用

# Tcpdump抓包工具的使用## 簡介tcpdump是linux下最常用的命令行抓包工具&#xff0c;可以在線安裝## 安裝- sudo apt install tcpdump## 查看網卡- ip addr查看網卡名稱## 簡單的使用示例- sudo tcpdump -i enp032 抓取指定網卡的數據包&#xff0c;并- sudo tcpdump -i enp03…

Node.js異步庫async

async的使用需要安裝第三方包 1.串行無關聯 async.series 函數依次執行,后面不需要調前面步驟的結果 程序執行時間為所有步驟之和 2.并行無關聯 async.paraller 某步出錯不影響其他步驟執行 程序執行時間為最長的那個時間 3.串行有關聯 async.waterfall 函數依次執行,后面需要…

Java技術棧---語言基礎

基礎語法 面向對象 接口 容器 異常 泛型 反射 注解 I/O

Mongodb 查詢時間類型

$where: this.CreateDate.toJSON().slice(0,13) "2019-04-04T05"轉載于:https://www.cnblogs.com/kevin1988/p/10685075.html

vue prop不同數據類型(數組,對象..)設置默認值

vue prop 會接收不同的數據類型&#xff0c;這里列出了 常用的數據類型的設置默認值的寫法,其中包含&#xff1a; Number, String, Boolean, Array, Function, Object refAge: { type: Number, default: 0 }, refName: { type: String, default: }, hotDataLoading: { typ…

正則表達式——基礎

正則表達式的基本符號使用&#xff1a; 1。基本符號&#xff1a; a . 匹配任意單個字符&#xff0c;如&#xff1a;.000就可以匹配到1000&#xff0c;2000&#xff0c;3000&#xff0c;a000,b000等。 b | 匹配滿足其中一個條件&#xff0c;如&#xff1a; 1000|2000|3000 可以…

談一談并查集QAQ(上)

最近幾日理了理學過的很多oi知識。。。發現不知不覺就有很多的知識忘記了。。。 在聊聊并查集的時候順便當作鞏固吧。。。。 什么是并查集呢? ( Union Find Set ) 是一種用于處理分離集合的抽象數據結構類型。 具體一點: 當我們給出兩個元素的一個無序對&#xff08;a,b&#…

vue的雙向綁定原理及實現

前言 使用vue也好有一段時間了&#xff0c;雖然對其雙向綁定原理也有了解個大概&#xff0c;但也沒好好探究下其原理實現&#xff0c;所以這次特意花了幾晚時間查閱資料和閱讀相關源碼&#xff0c;自己也實現一個簡單版vue的雙向綁定版本&#xff0c;先上個成果圖來吸引各位&a…

python后端將svc文件數據讀入數據庫具體實現

如何用python將svc文件的數據讀入到MySQL數據庫里&#xff0c;在此直接上代碼了&#xff0c;感興趣的朋友可以貼代碼測試&#xff1a; import pandas as pd import os from sqlalchemy import create_engine # 初始化數據庫連接&#xff0c;使用pymysql模塊 # MySQL的用戶&…

作業——8

這個作業屬于哪個課程C語言程序設計Ⅱ這個作業的要求在哪里C語言作業評價標準我在這個課程的目標是指針與字符串這個作業在哪個具體方面幫助我實現目標使用指針與字符串參考文獻指針和字符串&#xff08;基礎知識&#xff09;第七周作業 一 1 、使用函數刪除字符串中的字符 輸入…

Vue實現組件props雙向綁定解決方案

注意&#xff1a; 子組件不能直接修改prop過來的數據&#xff0c;會報錯 方案一&#xff1a; 用data對象中創建一個props屬性的副本 watch props屬性 賦予data副本 來同步組件外對props的修改 watch data副本&#xff0c;emit一個函數 通知到組件外 HelloWorld組件代碼如下…

統計詞頻問題

adict{} xinput().lower() #把單詞大寫字母改為小寫字母 for i in x:if i in [,,.,"",",!]:xx[:x.index(i)]x[x.index(i)1:] #把句子中的非字母字符用切片操作刪掉 asetset(x.split( )) #集合的好處在于不重復 alstx.split( ) for n in aset:tempdict{n:alst.…

正則表達式常用函數

<?php //preg_match("正則表達式","字符串")用于在字符串中查找匹配項 $email "987044391qq.com"; if (preg_match("/^([a-zA-Z0-9])([.a-zA-Z0-9_-])*([.a-zA-Z0-9_-])([.a-zA-Z0-9_-])([.a-zA-Z0-9_-])$/",$email)){ echo 匹…

利用js的閉包原理做對象封裝及調用方法

創建一個js文件&#xff0c;名為testClosure.js&#xff1a; ? 1 2 3 4 5 6 7 8 9 (function () { function a() { alert(i am a); } outFunc function () { a(); } })(); 這里不論寫多少個function,a b c d ...外面都調用不到&#xff0c;包括這里面va…

Flask系列06--(中間件)Flask的特殊裝飾器 before_request,after_request, errorhandler

一.使用 Flask中的特殊裝飾器(中間件)方法常用的有三個 app.before_request # 在請求進入視圖函數之前app.after_request # 在請求結束視圖函數之后 響應返回客戶端之前app.errorhandler(404) # 重定義錯誤信息before_request def func():passafter_request def func(ret): # …