1.补全代码(微信分享后地址发生改变,根据地址获取get传递参数)
var url = 'http://test6m.wukonglicai.com/act/bfe/wk-op/jf-forest/index.html?from=singlemessage&isappinstalled=0#/transfer?shareId=9fwkZUWBURLF65AL544MFOXDFSBBGI?name=aa'
var get = function (url, key) {
var str = url.slice(url.indexOf(key)).split("?")[0];
if (str.indexOf("&") != -1) {
str = str.split("&")[0].split("=")[1];
} else {
str = str.split("=")[1];
}
return str
}
console.log(get(url, 'from')) // singlemessage
/*
slice() 方法可从已有的数组中返回选定的元素。
split() 方法用于把一个字符串分割成字符串数组。
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。(!=-1,说明存在)
*/
2.不借助临时变量,进行两个整数的交换
输入 a = 2, b = 4 输出 a = 4, b = 2
function swap(a, b) {
[a, b] = [b, a]
return [a, b];
}
var a = 2,
b = 4;
console.log(swap(a, b)); // [4, 2]
3.进行两个整数的交换
输入 a = 2, b = 4 输出 a = 4, b = 2
function swap(a, b) {
[a, b] = [b, a]
return [a, b].join(",");
}
var a = 2,
b = 4;
console.log(swap(a, b)); // 4, 2
1.请简述node环境下的commonjs规范(说出如何导出模块,如何引入模块,如何创建模块)?
答:CommonJS 是模块化的标准,nodejs 就是 CommonJS(模块化)的实现。
3.如下:是一段html结构
<ul>
<li key="1"></li>
<li key="2"></li>
<li key="3"></li>
<li key="4"></li>
</ul>
加载一段对应的javaScript代码
let oUl = document.getElementsByTagName('ul')[0];
let li = document.getElementsByTagName('li');
const {map,forEach} = [];
li = map.call(li,item=>{
let key = 2 * item.getAttribute('key') - 1;
item.setAttribute('key',key);
return item;
});
oUl.innerHTML = '';
forEach.call(li,item=>{
oUl.appendChild(item);
})
请结合html和javaScript描述出这段代码的运行效果,并给每句代码添加注释,在注释中指明该句代码的含义