js學習

自己學習總結的一些簡單的js.

錨點

<a name="html">HTML 教程</a><br>
<a name="css">CSS 教程</a><br>
<a name="xml">XML 教程</a><br>
<a href="/js/">JavaScript 教程</a>
document.write(document.anchors.length);//獲取錨點數

錨點數量爲3個   a標籤name指向的是錨點

innerHTML

定義

innerHTML 屬性設置或返回表格行的開始和結束標籤之間的 HTML。

用法1:

<body>

<a name="html">HTML 教程</a><br>
<a name="css">CSS 教程</a><br>
<a name="xml">XML 教程</a><br>
<a id="html">HTML 教程</a>
<p>文檔中第一個錨:
<script>
document.write(document.anchors[0].innerHTML);
</script>
</p>

</body>

結果爲 HTML 教程

document.getElementById("html").innerHTML

也可獲得同樣的結果

用法2

<script>
function myFunction(){
	document.getElementById("demo").innerHTML="我的第一個 JavaScript 函數";
}
</script>
</head>
<body>
	
<h1>我的 Web 頁面</h1>
<p id="demo">一個段落。</p>
<button type="button" onclick="myFunction()">點擊這裏</button>
	
</body>

結果爲:p標籤的內容爲
我的第一個 JavaScript 函數

調用外部的js

<script src="myScript.js"></script>

調用一個名爲myScript的js文件


document.write


請使用 document.write() 僅僅向文檔輸出寫內容。
如果在文檔已完成加載後執行 document.write,整個 HTML 頁面將被覆蓋
例子:

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>document.write()</title> 
</head>
<body>
	
<h1>會被覆蓋</h1>
<p>我的段落。會被覆蓋</p>
<button onclick="myFunction()">點我</button>
<script>
function myFunction() 
{
    document.write(Date());
}
</script>
	
</body>
</html>


console.log()

作用在控制檯輸出。

換行

可以使用反斜槓“\”進行換行

document.write("你好 \
世界!");

可以正常顯示,不能下面這樣使用!

document.write \ 
("你好世界!");

對象創建方法


方法一:

function Obj(){
    var obj=new Object();
    obj.name="小明";
    obj.age=12;
    obj.ontFun=function(){
    }//可以有多個方法
   /* obj.twoFun=function(){
    }*/
    return obj;
}
var one=Obj();

方法二:

把第一種方法的

//var one = Obj();
//換成
var one = new Obj;

其他方法:

var one = {name : '小明', age : 12 , oneFun : function(){ ... }  }
//或
var one= new Ojbect();
one.name = '小明';   
one.age = 12;  
one.oneFun = function(){  }

typeof操作符

typeof可以檢測數據類型。

typeof "str"                // 返回 string 
typeof 12                  // 返回 number
typeof false                 // 返回 boolean
typeof [1,2,3,4]             // 返回 object
typeof {name:'小明', age:12} // 返回 object
特別提醒:

typeof null        //返回object
var person = null      
typeof person   //返回object
var person = undefined
typeof person   //返回undefined
var person;                  // 值爲 undefined(空), 類型是undefined
typeof person               //返回undefined

undefined與null的區別

null 和 undefined 的值相等,但類型不等

typeof undefined             // undefined
typeof null                  // object
null === undefined           // false
null == undefined            // true

constructor 屬性

"John".constructor                 // 返回函數 String()  { [native code] }
(3.14).constructor                 // 返回函數 Number()  { [native code] }
false.constructor                  // 返回函數 Boolean() { [native code] }
[1,2,3,4].constructor              // 返回函數 Array()   { [native code] }
{name:'John', age:34}.constructor  // 返回函數 Object()  { [native code] }
new Date().constructor             // 返回函數 Date()    { [native code] }
function () {}.constructor         // 返回函數 Function(){ [native code] }
可以使用constructor來查看對象是不是數組或者日期

自動轉換類型

當 JavaScript 嘗試操作一個 "錯誤" 的數據類型時,會自動轉換爲 "正確" 的數據類型。

5 + null    // 返回 5         null 轉換爲 0
"5" + null  // 返回"5null"   null 轉換爲 "null"
"5" + 1     // 返回 "51"      1 轉換爲 "1"  
"5" - 1     // 返回 4         "5" 轉換爲 5

href="#"與href="javascript:void(0)"的區別

# 包含了一個位置信息,默認的錨是#top 也就是網頁的上端。
而javascript:void(0), 僅僅表示一個死鏈接。
在頁面很長的時候會使用 # 來定位頁面的具體位置,格式爲:# + id。
如果你要定義一個死鏈接請使用 javascript:void(0) 。

<a href="javascript:void(0);">點我沒有反應的!</a>
<a href="#pos">點我定位到指定位置!</a>
<br>
...
<br>
<p id="pos">尾部定位點</p>

#pos可以定位到id尾pos的尾部定位點

HTML DOM 樹

DOM HTML tree

通過 id 查找 HTML 元素

var id=document.getElementById("id");

通過標籤名查找 HTML 元素

var id=document.getElementById("id");
var p=id.getElementsByTagName("p");

通過類名找到 HTML 元素

var className=document.getElementsByClassName("className");

數字

當一個數字直接出現在JavaScript程序中,我們稱之爲數字直接量,注意,在任何數字直接量前加負號(-)可以得到他們的負值,但負號是一元求反運算符,並不是數字直接量語法的組成部分。







發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章