var ul = document.getElementById("newsList"); ul.appendChild(ul.firstChild);
var a = 'boolean', b = [0,1]; b.a = a; a = b; b = a.a; delete a.a; alert(a); alert(b);
<ul id="newsList"> <li>a</li> <li>b</li> <li>c</li> <li>d</li> </ul> <script type="text/javascript"> var ul = document.getElementById("newsList"); ul.appendChild(ul.firstChild); </script>
1. var el = document.getElementById('newsList').childNodes[0]; var pEl = el.parentNode; pEl.removeChild(el); pEl.appendChild(el);2.方法很多,楼上的就可以 b.a = a; a = b; b = b.a; delete a.a;
var d = document.getElementById('newsList'); d.appendChild(d.firstChild);//firstChild为第一个nodeType为1的节点a = [b,b=a][0]
a = [b,b=a][0] 这个很简介强大,放数组里交换。
对啊,不明白,注册个属性就不是中间变量了?使用字面量就不是中间变量了?按这样说:b.push(a); //借用了b的第三个元素 a = b; b = a.pop(); b['temp'] = a; //借用temp属性 a = b; b = a['temp']; delete a['temp']; //擦下屁股7楼的方法和这个没区别:temp = [b,a]; //借用了新数组 b = a; a = temp[0];倘若a、b都是数字,考考异或运算倒是显些水平,可惜一个是字符串,一个是数组。下面的代码才是真正的巧妙:var a = 34, b= 89; a = a + b; b = a - b; // a+b-b=a a = a - b; // a+b-a=b异或的代码记都不用记,三个式子完全一样var a = 31, b= 93; a = a ^ b; //记住a=a^b,带入下式 b = a ^ b; //a^b^b = a a = a ^ b; //a^b^a = b
对啊,不明白,注册个属性就不是中间变量了?使用字面量就不是中间变量了?按这样说:b.push(a); //借用了b的第三个元素 a = b; b = a.pop(); b['temp'] = a; //借用temp属性 a = b; b = a['temp']; delete a['temp']; //擦下屁股7楼的方法和这个没区别:temp = [b,a]; //借用了新数组 b = a; a = temp[0];倘若a、b都是数字,考考异或运算倒是显些水平,可惜一个是字符串,一个是数组。下面的代码才是真正的巧妙:var a = 34, b= 89; a = a + b; b = a - b; // a+b-b=a a = a - b; // a+b-a=b异或的代码记都不用记,三个式子完全一样var a = 31, b= 93; a = a ^ b; //记住a=a^b,带入下式 b = a ^ b; //a^b^b = a a = a ^ b; //a^b^a = b
不用任何中间量,这样算不算。觉得这题目出的没道理var a = 'boolean', b = [0,1]; a = a+"`"+b; b = a.replace(/`.*/,""); a = a.replace(/.*`/,"").split(","); alert(a); alert(b);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
$("#newsList").children().eq(0).click(function(){//点击触发移动
$(this).remove();
$("#newsList").append($(this));
});
})
//题目2
var a = 'boolean';
var b = [0,1];
a=[a,b];
b=a[0];
a=a[1];
alert(a);
alert(b);
</script><div id="newsList">
<p class="a">1</p>
<p class="b">2</p>
<p class="c">3</p>
</div>
ul.appendChild(ul.firstChild);
b.a = a;
a = b;
b = a.a;
delete a.a;
alert(a);
alert(b);
<li>a</li>
<li>b</li>
<li>c</li>
<li>d</li>
</ul>
<script type="text/javascript">
var ul = document.getElementById("newsList");
ul.appendChild(ul.firstChild);
</script>
var el = document.getElementById('newsList').childNodes[0];
var pEl = el.parentNode;
pEl.removeChild(el);
pEl.appendChild(el);2.方法很多,楼上的就可以
b.a = a;
a = b;
b = b.a;
delete a.a;
d.appendChild(d.firstChild);//firstChild为第一个nodeType为1的节点a = [b,b=a][0]
a = [b,b=a][0] 这个很简介强大,放数组里交换。
a = b;
b = a.pop();
b['temp'] = a; //借用temp属性
a = b;
b = a['temp'];
delete a['temp']; //擦下屁股7楼的方法和这个没区别:temp = [b,a]; //借用了新数组
b = a;
a = temp[0];倘若a、b都是数字,考考异或运算倒是显些水平,可惜一个是字符串,一个是数组。下面的代码才是真正的巧妙:var a = 34, b= 89;
a = a + b;
b = a - b; // a+b-b=a
a = a - b; // a+b-a=b异或的代码记都不用记,三个式子完全一样var a = 31, b= 93;
a = a ^ b; //记住a=a^b,带入下式
b = a ^ b; //a^b^b = a
a = a ^ b; //a^b^a = b
a = b;
b = a.pop();
b['temp'] = a; //借用temp属性
a = b;
b = a['temp'];
delete a['temp']; //擦下屁股7楼的方法和这个没区别:temp = [b,a]; //借用了新数组
b = a;
a = temp[0];倘若a、b都是数字,考考异或运算倒是显些水平,可惜一个是字符串,一个是数组。下面的代码才是真正的巧妙:var a = 34, b= 89;
a = a + b;
b = a - b; // a+b-b=a
a = a - b; // a+b-a=b异或的代码记都不用记,三个式子完全一样var a = 31, b= 93;
a = a ^ b; //记住a=a^b,带入下式
b = a ^ b; //a^b^b = a
a = a ^ b; //a^b^a = b
不用任何中间量,这样算不算。觉得这题目出的没道理var a = 'boolean', b = [0,1];
a = a+"`"+b;
b = a.replace(/`.*/,"");
a = a.replace(/.*`/,"").split(",");
alert(a);
alert(b);
a = [b,b=a][0] 这个很简介强大,放数组里交换。
good
学到一招