我试图测试是否未定义Javascript变量.
你会看到我并不期望predQuery [preId]的值是'未定义的'如果我没有先得到一个警告说"它难以置信".但我经常这样做,所以我猜我的说法
predQuery[preId]=='undefined')
Run Code Online (Sandbox Code Playgroud)
未正确匹配未定义的元素.
if((predQuery.length < preId) || (predQuery[preId]=="") || (predQuery[preId]=='undefined')){
alert("its unbelievable");
alert(predQuery[preId]);
queryPreds[variables] = preId;
queryObjs[variables] = objId;
predQuery[preId] = variables;
}
else {
alert(predQuery[preId]);
var predIndex = predQuery[preId];
queryPreds[predIndex] = preId;
queryObjs[predIndex] = objId;
}
Run Code Online (Sandbox Code Playgroud)
如果需要,我可以添加更多代码.
我有以下声明
expect(A.["BAR"].name).toEqual("foo");
Run Code Online (Sandbox Code Playgroud)
由于我的对象A具有顶级属性"BAR"并且条具有值"foo"的事实.
我想测试我的结构以确认属性"NONEXISTINGPROP"尚未定义.例如
expect(A.["NONEXISTINGPROP"].name).not.toBeDefined();
Run Code Online (Sandbox Code Playgroud)
但是我似乎得到了
"TypeError: A.[NONEXISTINGPROP] is undefined"
Run Code Online (Sandbox Code Playgroud)
在茉莉花测试跑步者中,这正是我想要确认的.知道为什么Jasmine在哭.我希望它能通过这个.
谢谢你
在ejs模板中检查未定义属性的最佳方法是什么?
(我正在使用TJ Holowaychuk 的node.js包)
例:
var tpl = '<% if (foo) { %>foo defined<% } else { %>foo undefined<% } %>';
console.log(ejs.render(tpl, { locals: { bar: "baz" } }));
Run Code Online (Sandbox Code Playgroud)
我希望这会渲染"foo undefined".它确实会抛出一个未定义的错误.
我知道这不应该是一个问题,因为这是测试中的预期行为.有一种简单的方法可以避免这种情况吗?
我找到的唯一解决方案是使用该hasOwnProperty方法.
var tpl = '<% if (hasOwnProperty("foo")) { %>foo defined<% } else { %>foo undefined<% } %>';
console.log(ejs.render(tpl, { locals: { bar: "baz"} }));
Run Code Online (Sandbox Code Playgroud)
这不会引发任何错误.
有没有更好的方法来保持模板清洁?或者为什么会抛出这个错误?
试图通过编译我的程序 g++ -o prog1 main.cpp -std=c++0x
我收到错误:
/tmp/cc1pZ8OM.o: In function `main':
main.cpp:(.text+0x148): undefined reference to `Hash::insert(int, char)'
collect2: error: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)
main.cpp中
#include <iostream>
#include <cstring>
#include <cstdlib>
#include <cstdio>
#include <functional>
#include "Hash.h"
using namespace std;
int main(int argc, char *argv[]) {
//preset prime number
int prime = 101;
hash<char> h1;
int key;
Hash HashTable;
// check for Request & string parameters
if(argc != 3) {
cout << "Run program with 2 parameters. [Lower …Run Code Online (Sandbox Code Playgroud) 我正在阅读K&R中关于C的联合,据我所知,联合中的单个变量可以包含几种类型中的任何一种,如果某些东西存储为一种类型并且提取为另一种,则结果纯粹是实现定义的.
现在请检查以下代码段:
#include<stdio.h>
int main(void)
{
union a
{
int i;
char ch[2];
};
union a u;
u.ch[0] = 3;
u.ch[1] = 2;
printf("%d %d %d\n", u.ch[0], u.ch[1], u.i);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
输出:
3 2 515
Run Code Online (Sandbox Code Playgroud)
在这里,我在分配值u.ch,但来自检索u.ch和u.i.它是实现定义的吗?或者我做的事情真的很傻?
我知道这对其他大多数人来说似乎都是初学者,但我无法弄清楚输出背后的原因.
谢谢.
我有一个带3个参数的函数.我遇到的问题之一是参数之一是有时未定义的Object值的属性(即它接受thing.foo.bar,有时thing.foo未定义,因此它无法访问bar).
这是怎么回事?在函数的声明中,我有一个条件检查:
if (!parameterName),但浏览器(Chrome)仍然抛出一个错误,它无法读取undefined 的bar属性.
我有一个数组和PHP,当我打印出来时,我可以看到我需要访问的值,但是当我尝试通过他们的密钥访问它时,我得到一个PHP通知.我用print_r打印了数组:
Array
(
[207] => sdf
[210] => sdf
)
Run Code Online (Sandbox Code Playgroud)
当我尝试使用索引访问数组时,我得到一个未定义的偏移通知.这是我的代码:
print_r($output);
echo $output[207]; // Undefined Offset
echo $output["207"]; // Undefined Offset
Run Code Online (Sandbox Code Playgroud)
该$output数组是对array_diff_key的调用的结果,最初通过HTTP POST请求作为JSON输入.
array_keys给了我以下内容:
Array
(
[0] => 207
[1] => 210
)
Run Code Online (Sandbox Code Playgroud)
回应评论:
var_dump(key($output)); 输出:
Run Code Online (Sandbox Code Playgroud)string(3) "207"
var_dump(isset($output[key($output)])); 输出:
Run Code Online (Sandbox Code Playgroud)bool(false)
一个简单的Bash变量测试:
${varName:? "${varName} is not defined"}
Run Code Online (Sandbox Code Playgroud)
我想把它放在一个函数中来重复使用它.怎么样?
以下失败
#
# Test a variable exists
tvar(){
val=${1:? "${1} must be defined, preferably in $basedir"}
if [ -z ${val} ]
then
echo Zero length value
else
echo ${1} exists, value ${1}
fi
}
Run Code Online (Sandbox Code Playgroud)
即如果测试失败,我需要退出.
由Carl Norum编辑,包括适当的标准参考.
C标准规定
如果在计算表达式期间发生异常情况(即,如果结果未在数学上定义或未在其类型的可表示值范围内),则行为未定义.
是否有编译器开关可以保证整数溢出时的某些行为?我想避免鼻腔恶魔.特别是,我想强制编译器包装溢出.
为了唯一性,让标准为C99,编译器为gcc.但我会对其他编译器(icc,cl)和其他标准(C1x,C89)的答案感兴趣.事实上,只是为了惹恼C/C++人群,我甚至欣赏C++ 0x,C++ 03和C++ 98的答案.
注:国际标准ISO/IEC 10967-1可能与此相关,但据我所知,仅在资料性附录中提到过.
我经常(thing != undefined || thing != null)?...:...;检查.在javascript或jquery中检查后有没有任何方法会返回bool?
你将如何在jquery中添加此检查作为函数?