jjzjj

variable-declaration

全部标签

javascript - typescript : Unexpected token; 'constructor, function, accessor or variable'

我用类型脚本编写了以下类。当我编译它时,它会出错说"src\main\MqttClientWrapper.ts(24,2):错误TS1068:意外的token。一个构造或者,需要方法、访问器或属性。”。下面是我的代码。varmqtt:any=require('mqtt');exportinterfaceIWillMessage{topic:string;payload:string;qos:number;retain:string;}exportinterfaceIMessageReceivedCallBack{onMessageReceived(message:string);}ex

javascript - 有没有办法使用变量创建对象并忽略 undefined variable ?

我正在尝试找到一种创建对象的方法,在创建对象时它会忽略未定义的值。在下面的示例中,变量someNames在创建对象时具有未知内容。constsomeNames={catName:'purry',rabbitName:'floppy',turtleName:'shelly'};const{catName,dogName,hamsterName,rabbitName}=someNames;constanimalNames=Object.assign({},{catName,dogName,hamsterName,rabbitName});console.log(animalNames);/

JavaScript : Check if variable exists and if equal to value

我有三个页面使用相同的代码,其中一个页面不存在这个变量,另外两个页面上变量ticketType的值为1或2。我需要首先检查ticketType是否存在并且不存在tundefined其次,需要确定它是1还是2。这个if语句产生一个错误:if(typeofticketType!=undefined&&ticketType==1){}这是说ticketType未定义。我尝试嵌套if语句来检查它是否首先被定义,认为它不会去尝试内部if语句,但firebug仍然会产生错误。有什么想法吗?必须有办法做到这一点...... 最佳答案 'undef

javascript - Javascript 的缺点 "single var pattern"

在Stefanov的JSDesignPatterns一书中,他写道“你使用一个var语句并声明多个以逗号分隔的变量”,然后给出了一个“单一var”模式的示例,如下所示:functionfunc(){vara=1,b=2,sum=a+b,myobject={},i,j;Stefanov还写道:“在声明变量时也使用初始值对其进行初始化是一种很好的做法。”“您也可以在声明时做一些实际工作,例如前面代码中sum=a+b的情况。”现在我有一些代码如下,使用单个var模式声明了相同数量的变量,但做了更多的“声明时的实际工作”:varhtml='{purchaseQty}FR: {from

javascript - setTimeout 循环中的 undefined variable

所以我的问题是超时,因为在它开始时我的数组被重置并且所有其他值也被更改。我在消息数组中有用户输入,这是他们输入的行。例如:messages=["firstline","second","third","etc.."];for(vari=0;ik和f分别是常量值3和2,但它们可以由用户更改到任何浮点值。x和y是一些坐标。所以一旦draw()函数被调用,这些值就是未定义的或错误的。我搜索了一些答案,但没有一个相似到足以让我弄清楚我需要为我的特定案例做些什么。 最佳答案 您的for循环根据示例messages长度执行4次。然而,当第一个s

javascript - 类型错误 : variable. getHours();未定义,其中变量 = Date.now()?

我希望获取当前的日期时间,并提取小时、分钟等,以便为消息添加时间戳。为什么控制台记录TypeError:Date.datetimeNowisundefined为此:vardatetimeNow=Date.now();varhourNow=datetimeNow.getHours();varminuteNow=datetimeNow.getMinutes(); 最佳答案 代替:vardatetimeNow=Date.now();试试这个:vardatetimeNow=newDate();

javascript - Angular : Variables in ng-model

我有一个循环ng-repeatName:{{data.name}}我希望$scope.age变成$scope.age_data.name。例如:$scope.age_Tan、$scope.age_Jim...所以我尝试了ng-model="age_{{data.name}}"但它出错了。如何解决? 最佳答案 执行此操作的“正确”方法是在Controller中执行此操作:$scope.ages={};然后在模板中:Name:{{data.name}}应该工作... 关于javascript

javascript - 我们是 'declare' jQuery 还是只是简单地使用它?

我在一次采访中被问及你如何'声明'jQuery?他并不是指jQuery变量或$(func())。如果您觉得这个问题很奇怪,请不要因为这个问题而惩罚我,因为我只是因为被问到而询问。:) 最佳答案 您不需要“声明”jQuery,您只需将文件包含在脚本标记中:如果您查看jQuerysource当源代码在自执行匿名函数中运行时,它将自身附加到window.$和window.jQuery。(function(window,undefined){//restofsourcehere//ExposejQuerytotheglobalobjectw

带有嵌入式 Ruby : How to safely assign a ruby value to a javascript variable 的 Javascript

我在页面的javascriptblock中有这一行:res=foo('');处理@ruby_var中有单引号的情况的最佳方法是什么?否则它会破坏JavaScript代码。 最佳答案 我想我会使用rubyJSON@ruby_var上的库,为字符串获取正确的js语法并去掉'',fex.:res=foo()(在require"json"'ing之后,不完全确定如何在页面中执行此操作,或者上述语法是否正确,因为我没有使用该模板语言)(另一方面,如果JSON曾经更改为与js不兼容,那将会中断,但由于大量代码使用eval()来评估json,我怀

javascript - 错误 : Can't access lexical declaration

lettextBytes=ctypes.uint8_t("hello");leta=newSECItem;a.type=siBuffer;a.data=textBytes.address();a.len=textBytes.length;我收到ReferenceError:初始化前无法访问词法声明textBytes。 最佳答案 我无法重现你得到的引用错误,但我认为改变lettextBytes=ctypes.uint8_t("hello");因为这会抛出TypeError:expectedtypeuint8_t,got"hello"t