簡體   English   中英

在 JavaScript 中聲明和設置變量

[英]Declaring and setting variable in JavaScript

我目前在 Google Chrome 擴展程序中使用以下 JavaScript 來自動化在 nike.com 上購買運動鞋的“添加到購物車”過程;

var size_i_want = "11";

function fRun()
{enter code here
// Select size option.
var sizesList=document.getElementsByName("skuAndSize")[0];
for(var i=0; i<sizesList.length; i++)
{
    if(sizesList.options[i].text.trim() == size_i_want)
    {
        sizesList.selectedIndex = i;
    }
}

var aButtons = document.getElementsByTagName("button");
for(var i = 0; i < aButtons.length; ++i)
{
    if(aButtons[i].className.indexOf("add-to-cart") > -1)
    {
        aButtons[i].click();
    }
}
}

function fTick()
{
if(document.getElementsByName("skuAndSize")[0] != undefined)
{
    setTimeout("fRun()", 600);
    //fRun();
}else{
    setTimeout("fTick()", 300);
}
}
setTimeout("fTick()", 300);

此腳本在美國的 nike.com 上非常有效,但在英國和瑞典等其他國家/地區的 nike 網站上無法正常工作。

正如您可能會說我是 JavaScript 的新手,並且仍在深入研究以了解該語言。 但是我明白這歸結為這樣一個事實

var size_i_want = "11";

value 設置為整數(數字),但在 Nike UK 網站上,此影響的節點包含字母,例如“UK 10.5”。

有人能幫我聲明一個新變量並設置它的值,使其同時包含字母和數字嗎? 我也有一種感覺,這也會影響腳本,因此也非常感謝該領域的幫助。

在 javascript 中,變量不是類型安全的,因此您不要將它們聲明為整數或字符串。 巧合的是:

var size_i_want = "11";

這已經是一個字符串了。 所以你應該已經能夠向它添加字母了。 只需將其更改為:

var size_i_want = "UK 10.5";

正如millerbr 已經說過javascript 不是類型安全的。

字母和數字的混合不應該對腳本產生影響,因為

size_i_want = "11";
size_i_want = "UK 10.5";

都是字符串。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM