亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

求問大神,js中的return在此函數中的意義。謝謝!

求大神解釋一下return在這個例子中是什么意思?

我一知半解,看了一個大神的解答大概感覺和計算器上的“=”是一個概念,但是放在這里是為什么呢?return x的上一段中已經有x=x.nextSibling這個循環條件了,是為什么呢?麻煩通俗易懂一下 謝謝了。

<!DOCTYPE?HTML>
<html>
<head>
<meta?http-equiv="Content-Type"?content="text/html;?charset=utf-8">
<title>nextSibling</title>
</head>
<body>
<ul?id="u1">???
????????????<li?id="a">javascript</li>???
????????????<li?id="b">jquery</li>???
????????????<li?id="c">html</li>???
????????</ul>???
????????<ul?id="u2">???
????????????<li?id="d">css3</li>???
????????????<li?id="e">php</li>???
????????????<li?id="f">java</li>???
????????</ul>???
<script?type="text/javascript">
????function?get_nextSibling(n){
????????var?x=n.nextSibling;???????????//x=
????????while?(x?&&?x.nodeType!=1){
????????????x=x.nextSibling;
????????}
????????return?x;
????}

????var?x=document.getElementsByTagName("li")[0];
????document.write(x.nodeName);
????document.write("?=?");
????document.write(x.innerHTML);
????
????var?y=get_nextSibling(x);
????
????if(y!=null){
????????document.write("<br?/>nextsibling:?");
????????document.write(y.nodeName);
????????document.write("?=?");
????????document.write(y.innerHTML);
????}else{
??????document.write("<br>已經是最后一個節點");??????
????}
???
???function?get_previousSibling(n){
???????var?x=n.previousSibling;
???????while(x?&&?x.nodeType!=1){
???????????x=x.previousSibling;
???????}
???????return?x;
???}
????
</script>
</body>
</html>


正在回答

1 回答

舉個簡單的例子,以下是計算和的函數,

function add(x,y){

var sum=x+y;

}

計算2+3=?

調用函數:add(2,3);

然后我想輸出結果,document.write(sum);

然后就會發現報錯了sum is not defined,這是說sum沒有聲明呀,

問題是 在add函數里面不是有寫var sum=x+y;為啥不起作用類,

因為這里定義的sum是局部變量,出了這個函數它就不管用了呀,

這樣怎么得到結果類,也只能老老實實寫下return了,

function add(x,y){

var sum=x+y;

return sum;

}

然后輸出結果可以直接document.write(add(2,3));

也可以先承接結果,var sum=add(2,3);document.write(sum);

而return就是用來返回結果的的,同時,return也是可以終止函數的,比如

function add(x,y){

var sum=x+y;

return sum;

alert(1);

}

執行add(2,3);發現根本不會彈出1,因為return后面的alert是不會執行的。


6 回復 有任何疑惑可以回復我~
#1

__blank 提問者

非常感謝!很通俗易懂啊
2016-03-10 回復 有任何疑惑可以回復我~
#2

丶Simple0

你好,x在外部不是已經定義了嗎?這樣是否有沖突啊 var x=document.getElementsByTagName("li")[0] 還有就是 var y=get_nextSibling(x);這里的x是不會和之前函數的x沖突的吧 問題感覺很幼稚,因為是新手...
2016-03-15 回復 有任何疑惑可以回復我~
#3

LeingK 回復 丶Simple0

不會有沖突,你可以去查一查全局變量和局部變量的區別,很多案例的
2016-03-16 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

求問大神,js中的return在此函數中的意義。謝謝!

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號