如何在VBScript中将项添加到现有数组?
是否有一个VBScript等效于Javascript中的push函数?
即
myArray有三个项目,"苹果","橙子"和"香蕉",我想在阵列的末尾添加"西瓜".
我开始学习一些javascript并理解在命名标识符时不允许破折号.但是,在CSS中,通常使用短划线表示ID和类.
在CSS中使用短划线是否会以某种方式干扰javascript交互?例如,如果我使用getElementByID("css-dash-name").我已经尝试使用带有破折号的getElementByID作为div ID的名称的一些示例,但它确实有效,但我不确定在所有其他上下文中是否都是这种情况.
我正在尝试对阵列中的数据执行清理工作,特别是将纪元时间转换为YYYY-MM-DD.
我最初尝试过这个功能:
foreach ($data as $row) {
$row['eventdate'] = date('Y-m-d', $row['eventdate']);
}
echo '<pre>';
print_r($data);
echo '</pre>';
Run Code Online (Sandbox Code Playgroud)
但是,当我输出数据时,foreach循环没有更新数据.
以下for循环确实有效:
for ($i=0; $i<count($data); $i++) {
$data[$i]['eventdate'] = date('Y-m-d', $data[$i]['eventdate']);
}
Run Code Online (Sandbox Code Playgroud)
为什么第一个循环失败而第二个循环失败?他们不一样吗?
如何使用javascript仅返回符合特定条件的数组中的对象?
例如,如果我有['apple','avocado','banana','cherry']并且只想输出以字母'A'开头的水果.
编辑:
接下来Sean Kinsey的功能,并尝试通过传入数组和字母来使其更灵活:
function filterABC(arr,abc){
var arr = arr;
var filtered = (function(){
var filtered = [], i = arr.length;
while (i--) {
if ('/^' + abc + '/'.test(arr[i])) {
filtered.push(arr[i]);
}
}
return filtered;
})();
return filtered.join();
Run Code Online (Sandbox Code Playgroud)
}
试图用filterABC(arr,'A')或filterABC(arr,'A | B | C |')调用它来输出从A到C的所有匹配但是这部分有问题.
我正在努力更好地了解SSL的工作原理,因此我在服务器上安装了自签名SSL证书进行测试.
当我将数据发布到测试服务器上的HTTPS网址时,Chrome开发人员工具会以纯文本格式显示所有数据.这是我应该期望的还是数据在开发人员工具中显示为加密的?
我尝试运行数据包嗅探器(可可分析器数据包),我没有看到任何我想用纯文本发布的数据,但是有些消息确实显示了我发布的域名(只有域名,没有查询参数或其他数据).这是正常的吗?我的印象是包括网址在内的所有内容都应加密.
我正在尝试检查表单输入是否有任何值(与值是什么无关),以便我可以将值附加到提交时的操作URL(如果它存在).我需要在添加值之前添加参数的名称,并且只留下一个空白的参数名称,如"P =",没有任何值会弄乱页面.
这是我的代码:
function getParam() {
// reset url in case there were any previous params inputted
document.form.action = 'http://www.domain.com'
if (document.getElementById('p').value == 1) {
document.form.action += 'P=' + document.getElementById('p').value;
}
if (document.getElementbyId('q').value == 1) {
document.form.action += 'Q=' + document.getElementById('q').value;
}
}
Run Code Online (Sandbox Code Playgroud)
和形式:
<form name="form" id="form" method="post" action="">
<input type="text" id="p" value="">
<input type="text" id="q" value="">
<input type="submit" value="Update" onClick="getParam();">
</form>
Run Code Online (Sandbox Code Playgroud)
我认为设置值== 1会做一个简单的存在,不存在检查无论提交的值是什么,但我想我错了.
另外,我正在使用if语句,但我认为这是错误的代码,因为我没有其他的.也许,使用switch语句,虽然我不确定如何设置它.也许:
switch(value) {
case document.getElementById('p').value == 1 :
document.form.action += 'P=' + document.getElementById('p').value; :
case document.getElementById('q').value …Run Code Online (Sandbox Code Playgroud) 如何将多个正则表达式应用于单个字符串?
例如,用户将以下内容输入文本区域:
red bird
blue cat
black dog
Run Code Online (Sandbox Code Playgroud)
我想用逗号替换每个回车符,每个空格用下划线替换,所以最后的字符串读为red_bird,blue_cat,black_dog.
到目前为止,我已尝试过以下几种语法的变体:
function formatTextArea() {
var textString = document.getElementById('userinput').value;
var formatText = textString.replace(
new RegExp( "\\n", "g" ),",",
new RegExp( "\\s", "g"),"_");
alert(formatText);
}
Run Code Online (Sandbox Code Playgroud) 我已经看到在几个站点上引用了这个格式函数,但它们都没有一个如何将数字传入函数的明确示例.
我试过'12345'.format('0.00'),我相信它应该如何写,但它给了我一个错误,该对象不支持属性或方法.我也试过Number('12345').format('0.00'); var num ='12345'// num.format('0.00'); 格式('0.00','12345')甚至尝试使用数字而不是字符串12345.format(0.00).我错过了一些非常明显的东西吗?
包含的功能副本供参考,因此您无需访问该站点(填写所有缺失的部分).
/**
* I ? Google
*/
String.prototype.stripNonNumeric = function() {
var str = this + '';
var rgx = /^\d|\.|-$/;
var out = '';
for( var i = 0; i < str.length; i++ ) {
if( rgx.test( str.charAt(i) ) ) {
if( !( ( str.charAt(i) == '.' && out.indexOf( '.' ) != -1 ) ||
( str.charAt(i) == '-' && out.length != 0 ) ) ) {
out += str.charAt(i); …Run Code Online (Sandbox Code Playgroud) 有没有人知道如何设置ServerXMLHTTP请求超时时的默认操作?我正在使用setTimeouts()根据MSDN站点设置超时选项.
理想情况下,我想从头开始再次初始化请求,或者如果超时则刷新页面.
我正在使用经典的asp和jscript.
这是我的要求:
function serverXmlHttp(url) {
var serverXmlHttp;
serverXmlHttp = Server.CreateObject("Msxml2.ServerXMLHTTP.6.0");
// set time out options
serverXmlHttp.setTimeouts(15000,15000,15000,15000);
// does not work
// serverXmlHttp.ontimeout(Response.Write("page has timed out"));
serverXmlHttp.open("GET", url, false);
serverXmlHttp.send();
if (serverXmlHttp.readyState == 4) {
return serverXmlHttp.responseText;
}
}
Run Code Online (Sandbox Code Playgroud) 我在制作jsonp请求时没有遇到任何问题,但是我不确定如何设置一个Web服务来在jsonp中提供响应.
首先,是否需要以某种方式配置服务器以允许jsonp请求,或者页面是否必须正确格式化响应?
在我的测试中,我从geonames.org获得了以下jsonp响应(我在服务器/域1上放置了一个空白页面,没有别的):
<?php echo $_GET['callback'];?>({"postalcodes":[{"adminName2":"Westchester","adminCode2":"119","postalcode":"10504","adminCode1":"NY","countryCode":"US","lng":-73.700942,"placeName":"Armonk","lat":41.136002,"adminName1":"New York"}]});
Run Code Online (Sandbox Code Playgroud)
在服务器/域2上,我发出以下请求:
$.ajax({
// works when I make the call to geonames.org instead of domain1
//url: 'http://www.geonames.org/postalCodeLookupJSON?postalcode=10504&country=US&callback=?',,
url: 'http://www.domain1.com/test/jsonp.php?callback=?',
success: function(data) {
$('#test').html(data);
},
});
Run Code Online (Sandbox Code Playgroud)
将文件放在同一服务器(域1或2)上并将其转换为常规json请求时,调用有效.我究竟做错了什么?
只是为了澄清:我的问题与收到请求的页面有关.当我将它发送到geonames.org,flickr等时,我知道请求有效... apis.但是,我正在尝试设置一个页面来发送响应.在我的例子中,我只有一个带有硬编码jsonp的空白页面.我不确定我是否必须在页面上有其他标题或在我的服务器上启用了某些功能.
javascript ×6
arrays ×2
asp-classic ×1
conditional ×1
css ×1
for-loop ×1
foreach ×1
formatting ×1
forms ×1
https ×1
jquery ×1
jsonp ×1
numbers ×1
php ×1
prototype ×1
regex ×1
replace ×1
ssl ×1
timeout ×1
vbscript ×1