function _submitForm() { _hide(); var getType = {}; if (s.action != null && getType.toString.call(s.action) === '[object Function]') { s.action(s.$phone.attr('value'), s.$message.attr('value'), s.callback); } }
时间: 2024-04-20 13:27:04 浏览: 14
这是一个 JavaScript 函数 `_submitForm()`,它的作用是隐藏某些元素并提交表单。函数中定义了一个变量 `getType`,它是一个空对象。接着,通过 `getType.toString.call()` 方法判断 `s.action` 是否是一个函数,如果是则调用该函数,并将表单中输入的电话号码、消息以及一个回调函数作为参数传入。如果不是函数,则不做任何操作。
相关问题
var attr = (ExcelObjectAttribute)ProgramModelEntities[0]?.GetType() ?.GetCustomAttributes(typeof(ExcelObjectAttribute), false) ?.FirstOrDefault(); List<Guid> ids = _coreRepository.Context.Set<CProgramme>().Select(i => i.Id).ToList(); List<String> errorIds = new(); bool successFlag = true; foreach (var cProgramme in Programmes) { if (ids.Contains(cProgramme.Id)) { successFlag = false; errorIds.Add(cProgramme.Id.ToString()); _errorLogService.SaveErrorLog(cProgramme.Id.ToString(), "Program Id already exists", attr.WokeSheetName); continue; } else { ids.Add(cProgramme.Id); } var exist = _coreRepository.Context.Set<CProgramme>().Where(s => s.Id != cProgramme.Id && s.Name.ToLower() == cProgramme.Name.ToLower() && s.SchoolId == cProgramme.SchoolId).Select(i => i.Id).ToList(); if (exist.Count > 0) { errorIds.Add(cProgramme.Id.ToString()); _errorLogService.SaveErrorLog(cProgramme.Id.ToString(), "Program name already exists", attr.WokeSheetName); successFlag = false; } } return successFlag; 优化一下这段代码
可以尝试以下优化:
1. 使用HashSet代替List,可以提高ids的查找速度。
2. 使用LINQ的Any方法代替ToList+Count,可以提高exist的查询速度。
3. 将错误日志的保存放到一个集合中,在循环结束后一次性保存,可以减少数据库操作。
优化后的代码如下:
```
var attr = (ExcelObjectAttribute)ProgramModelEntities[0]?.GetType()
?.GetCustomAttributes(typeof(ExcelObjectAttribute), false)
?.FirstOrDefault();
HashSet<Guid> ids = new(_coreRepository.Context.Set<CProgramme>().Select(i => i.Id));
List<string> errorLogs = new();
foreach (var cProgramme in Programmes)
{
if (ids.Contains(cProgramme.Id))
{
errorLogs.Add($"{cProgramme.Id}: Program Id already exists");
continue;
}
if (_coreRepository.Context.Set<CProgramme>().Any(s =>
s.Id != cProgramme.Id &&
s.Name.ToLower() == cProgramme.Name.ToLower() &&
s.SchoolId == cProgramme.SchoolId))
{
errorLogs.Add($"{cProgramme.Id}: Program name already exists");
continue;
}
ids.Add(cProgramme.Id);
}
if (errorLogs.Any())
{
_errorLogService.SaveErrorLogs(errorLogs, attr.WokeSheetName);
return false;
}
return true;
```
String url = HttpUtil.URL_GOODSLIST_PAGE2 + "pagesize=3&pageno=" + randomPage; if (commodityModel.getType_id()!= null ) { url = url + "&type_id=" + commodityModel.getType_id(); }
这段代码中,首先定义了一个字符串类型的变量"url",它的值是由常量"HttpUtil.URL_GOODSLIST_PAGE2"和一些参数拼接而成的。其中,"HttpUtil.URL_GOODSLIST_PAGE2"可能是一个常量或者一个静态变量,表示一个接口或者一个URL地址。接下来的代码中,使用了字符串拼接符"+",将一些参数拼接到"HttpUtil.URL_GOODSLIST_PAGE2"后面,形成完整的请求URL。这些参数包括:"pagesize=3"表示每页显示3个商品;"pageno=" + randomPage表示随机生成的页码数;"commodityModel.getType_id() != null"表示商品类型ID不为空时,才会拼接"&type_id="和商品类型ID。这段代码的作用是生成一个商品列表的请求URL,用于从服务器端获取商品列表数据。