let myFun = function(a,b){ console.info(arguments[1]); }; myFun(10,30,20);
时间: 2024-04-07 18:29:46 浏览: 10
这段代码定义了一个名为 myFun 的函数,它接受两个参数 a 和 b。在函数体中,使用 arguments[1] 输出第二个参数的值。
当调用 myFun(10, 30, 20) 时,实参 10 和 30 会分别赋值给形参 a 和 b。但是,由于函数定义中只有两个形参,因此实参 20 不会被赋值给任何形参。但是,它仍然可以通过 arguments 对象的索引访问。因此,arguments[1] 的值为 30,即第二个实参的值。最终,函数将输出 30。
相关问题
let myFun = (a,b,...rest)=>{ console.info(rest.length); }; myFun(10,30,20);
这段代码定义了一个名为 myFun 的箭头函数,它接受两个参数 a 和 b,以及一个剩余参数 rest。在函数体中,使用 rest.length 输出剩余参数的长度。
当调用 myFun(10, 30, 20) 时,实参 10 和 30 会分别赋值给形参 a 和 b,而剩余参数 rest 将包含实参 20。因此,rest.length 的值为 1,即剩余参数 rest 中元素的个数。最终,函数将输出 1。
var ac = new BMapGL.Autocomplete({ input: "suggestId", location: this.map, }); //建立一个自动完成的对象 ac.addEventListener("onconfirm", (e) => { let _value = e.item.value; let myValue = _value.province + _value.city + _value.district + _value.street + _value.business; document.querySelector("#searchResultPanel").innerHTML = "onconfirm<br />index = " + e.item.index + "<br />myValue = " + myValue; let that = this; function myFun() { var pp = local.getResults().getPoi(0).point; //获取第一个智能搜索的结果 that.map.setCenter(pp); } var local = new BMapGL.LocalSearch(this.map, { onSearchComplete: myFun, }); local.search(myValue); });
根据你提供的代码,可以看到你使用了百度地图的输入提示功能,但是没有明确说明出现了什么问题。不过从代码中可以看到一些可以优化的地方:
1. `ac.addEventListener("onconfirm", (e) => { ... });`中使用了箭头函数,虽然不影响功能,但是建议使用普通函数,以便更好地兼容老版本的浏览器。
2. `myValue`的值通过拼接字符串得到,这种方式容易出现问题,建议使用数组的 `join()` 方法来拼接字符串。
3. `let that = this;`这一行代码可以使用箭头函数来解决,例如:`let myFun = () => { ... }`,这样就不需要使用 `that` 这个变量来保存 `this` 的值了。
至于你的具体问题,可以提供一下报错信息或者现象,以便更好地帮助你解决问题。